为什么这些非捕获正则表达式组不能正常工作?

2024-05-18

所以我花了很多时间在另一个堆栈溢出问题上,同样的问题又出现在上一个问题上。非捕获组并没有像我期望的那样工作,至少我是这么认为的。

这是一个愚蠢的例子,类似于其他人的 CSS 测试字符串......

这是我的正则表达式:

(?:(rgb\([^)]*\)|\S+)(?:[ ]+)?)*

这是测试字符串:

1px solid rgb(255, 255, 255) test rgb(255, 255, 255)

我期待“1px”、“solid”、“rgb(255, 255, 255)”、“test”、“rgb(255, 255, 255)”的匹配组

但我只得到最后一个匹配的令牌。

这是测试的链接:

http://regex101.com/r/pK1uG7 http://regex101.com/r/pK1uG7

这里出了什么问题?我认为我有非捕获组,并且 regex101 底部的解释方式是有道理的,包括“贪婪”。


捕获组会覆盖之前的每个匹配项。捕获组 #1 首先匹配“1px”,然后捕获组 #1 匹配覆盖“1px”的“solid”,然后匹配覆盖“solid”的“rgb(255, 255, 255)”,等等。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

为什么这些非捕获正则表达式组不能正常工作? 的相关文章

  • 如何使用 regexp 来匹配 TCL 中的括号

    我有一个关于在 TCL 中使用正则表达式匹配括号的问题 例如我有一个像这样的字符串 yes it is true and it is fine 我只想匹配这部分yes it is true 如何搭配呢 您可以将括号括在字符类中 如 boba
  • Java用逗号或点和两个小数值验证价格[关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 验证必须用点或逗号表示价格值且最多具有两位小数值的字符串的最佳方法和解决方案是什么 RegExp java text DecimalFor
  • nginx 代理重定向,带有来自 uri 的端口

    我正在尝试使用 nginx 进行重定向 这个想法是将某些端口的 uri id 1234 重定向到 localhost 1234 固定端口的重定向 location id 1234 rewrite id 1234 1 break proxy
  • python 文件中的单词分析和评分

    我正在对一个句子进行逐字分析 例如 嘿那里 这是一部很棒的电影 我有很多像上面这样的句子 我有一个巨大的数据集文件 如下所示 我必须快速查找该单词是否存在 如果是 则进行分析并存储在字典中 例如从单词的文件中获取分数 句子最后一个单词的分数
  • 如何使用正则表达式删除JS中的ul标签和所有包含的内容

    我如何用js删除ul标签和所有内容 例子 div ul li a li li b li ul div 我要这个 div div i use var replace regex 有人可以帮助我吗 诗 只有js 我不能使用Jquery 如果您坚
  • JavaScript 和正则表达式:文字语法与正则表达式正则表达式对象

    我在这段小 JavaScript 代码中遇到了一些麻烦 var text Z Test Yeah Z With literal syntax it returns true good alert Z s S Z g test text Bu
  • 需要一个数字或一个非字母数字字符的密码正则表达式

    我正在寻找一个相当具体的正则表达式 我几乎有了它 但还不完全有 我想要一个至少需要 5 个字符的正则表达式 其中至少有一个字符是either一个数值or非字母数字字符 这是我到目前为止所拥有的 d a z 5 20 所以问题出在 或 部分
  • 正则表达式引擎如何解析具有递归子模式的正则表达式?

    此正则表达式匹配回文 1 2 我无法理解它是如何工作的 递归何时结束 以及正则表达式何时从递归子模式中断并转到 part Thanks 编辑 抱歉我没有解释 2 and 1 1 指第一个子模式 对其自身 2 反向引用第二个子模式的匹配 即
  • 从字符串中提取数字 (Regex C++)

    假设我有一根绳子S 1 this is a number 200 Val 54 4class find57 我想用Regex仅提取这些数字 num 1 1 num 2 200 num 3 54 而不是 4class 中的 4 或 find5
  • RewriteCond REQUEST_URI - ^ 未按预期工作

    我正在 codeigniter 中构建一个网站 我在 htaccess 文件中有一系列重写条件和规则 第一组规则根据 uri 的第一段打开或关闭 SSL 然后它再次循环 如果找到匹配项 则适当地重定向页面 如果没有匹配项 并且 uri 不以
  • 使用解析将 ** 运算符更改为幂函数?

    我的要求是将 运算符更改为幂函数 例如 1 Input B 2 Output power B 2 2 B 2 T 2 X Output power B 2 我写了下面的正则表达式来解决这个问题 rx r a zA Z0 9 a zA Z0
  • JavaScript 中的正则表达式用于验证十进制数字

    我想要 JavaScript 中的正则表达式来验证十进制数字 它最多只允许两位小数 例如 它应该允许10 89但不是10 899 它还应该只允许一个句点 例如 它应该允许10 89但不是10 8 9 尝试使用以下表达式 d d 0 2 如果
  • 使用正则表达式如何从十进制数中删除尾随零

    我需要编写一些正则表达式 它接受一个数字并删除小数点后的所有尾随零 语言是 Actionscript 3 所以我想写 var result String theStringOfTheNumber replace the regex 例如 3
  • Javascript 正则表达式来匹配正则表达式

    我正在研究一个特殊的正则表达式来匹配 javascript 正则表达式 现在我有这个正则表达式工作 i g m 例如 foo match i g m gt foo foo undefined foo i match i g m gt foo
  • Java中字符串中特殊字符的替换

    Java中如何替换字符串 E g String a adf sdf 如何替换和避免特殊字符 您可以删除除此之外的所有字符可打印的 ASCII 范围 http en wikipedia org wiki ASCII ASCII printab
  • 正则表达式拆分数字和字母组,不带空格

    如果我有一个像 11E12C108N 这样的字符串 它是字母组和数字组的串联 如何在中间没有分隔符空格字符的情况下分割它们 例如 我希望分割结果为 tokens 0 11 tokens 1 E tokens 2 12 tokens 3 C
  • shell中如何分割字符串

    我有一个变量作为 string ABC400p2q4 我怎样才能分开ABC400 and p2q4 我需要将它分成两个变量 结果我得到 echo var1 ABC400 echo var2 p2q4 可以用任何字母字符代替 ABC 可以用任
  • 解析西班牙姓氏

    西班牙姓氏由三部分组成 父亲的名字 可选的母亲姓名 可选配偶的父亲姓名 这三个部分中的每一部分都是一个单词 前面可能带有 De Del De La De Los 或 De Las 这些前缀中的每一个都以大写字母开头 并且每个部分可能只有一个
  • .htaccess 如果 URL 错误,请执行某些操作

    我正在做我的个人CMS http en wikipedia org wiki Content management system 我想在其中使用很酷 友好 的 URL 这是我的 htaccess 文件代码 RewriteEngine on
  • 正则表达式 - 从 markdown 字符串中提取所有标题

    我在用灰质 https www npmjs com package gray matter 以便将文件系统中的 MD 文件解析为字符串 解析器产生的结果是这样的字符串 n Clean er ReactJS Code Conditional

随机推荐

  • 合并 url 中的 2 个输入值

    我有这样的形式
  • 适用于移动设备的响应式订单确认电子邮件?

    我从未见过令人惊叹的订单确认 发票电子邮件 即使是最好的 html5 网站也会发送糟糕的订单确认电子邮件 有时是纯文本 我相信这是因为发票通常需要使用表格来显示购买的物品 这在移动设备上实现起来非常困难 我发现了一些让手机上的表格更易于管理
  • pip 列出活动 virtualenv 中的全局包

    将 pip 从 1 4 x 升级到 1 5 后pip freeze输出我的全局安装 系统 软件包的列表 而不是我的 virtualenv 中安装的软件包的列表 我尝试再次降级到 1 4 但这并不能解决我的问题 这有点类似于这个问题 http
  • 如何删除标题中的粗体?

    我有一个标题 h1 THIS IS A HEADLINE h1 如何使短语 THIS IS 不加粗 其余部分不做任何更改 我在文本装饰中找不到任何相关标签 标题看起来很粗体 因为它大尺寸 如果您已应用粗体或想要更改行为 您可以执行以下操作
  • 将特定字形与网络字体一起使用

    使用网络字体 我想使用字体功能设置 CSS 中的选项以及跨度类HTML 中 以便使用字体集中的特定替代字形 我需要以正确的语法使用哪些值 GID Unicode 才能定位特定的目标glyph内glyph备择方案 这些功能使用 OpenTyp
  • Web API - 访问 DbContext 类中的 HttpContext

    在我的 C Web API 应用程序中 我添加了CreatedDate and CreatedBy所有表中的列 现在 每当在任何表中添加新记录时 我想填充这些列 为此目的我已经覆盖SaveChanges and SaveChangesAsy
  • 指针减法混乱

    当我们从另一个指针中减去一个指针时 差值不等于它们相距多少字节 而是等于它们相距多少个整数 如果指向整数 为什么这样 这个想法是你指向内存块 06 07 08 09 10 11 mem 18 24 17 53 7 14 data 如果你有i
  • 包含 contains 的 json 格式查询

    我在 ansible 中有以下 json 输出 active transaction null cores 4 hostname alpha auth wb01 active transaction null cores 4 hostnam
  • JavaFX - 为什么多次将节点添加到窗格或不同的窗格会导致错误?

    我现在正在学习基本的 JavaFX 我不明白我正在阅读的书中的这一说法 不 诸如文本字段之类的节点只能添加到一个窗格中一次 将节点添加到多次窗格或不同的窗格将导致运行时错误 我可以从书中提供的UML图看出它是一个组合 但我不明白为什么 库类
  • 使用 System.Text.Json 即时格式化 JSON 流

    我有一个未缩进的 Json 字符串 例如 hash 123 id 456 我想缩进字符串并将其序列化为 JSON 文件 天真地 我可以使用缩进字符串Newtonsoft如下 using Newtonsoft Json Linq JToken
  • 如何返回 json 结果并将 unicode 字符转义为 \u1234

    我正在实现一个返回 json 结果的方法 例如 public JsonResult MethodName Guid key var result ApiHelper GetData key Data is stored in db as v
  • TransientObjectException - 对象引用未保存的瞬态实例 - 在刷新之前保存瞬态实例

    对于我的问题 我遇到了一些可能的好答案 但这是关于从 Hibernate 3 4 0GA 升级到 Hibernate 4 1 8 的问题 所以这曾经在以前的版本下工作 我已经四处搜索为什么它在这个新版本中中断 I get a org hib
  • 使用 animate() 的简单 jQuery 幻灯片

    使用 jQuery 的animate 如何将每个图像滑动一次 使用Slick js https github com kenwheeler slick 像CSS动画 然后停在最后一个 div class slideshow style he
  • 在 ASP.NET Core 3.1 中使用包含“System.Web.HttpContext”的旧项目

    我们有一些用 Net Framework编写的遗留项目 应该由由ASP NET Core3 1编写的API项目使用 问题是这些遗留项目正在使用 System Web HttpContext 您知道它不再存在于 net core 中 现在我们
  • jQuery UI 自动完成的“源”回调中的“响应”和“请求”参数是什么?

    我正在查看自动完成教程 我有几个问题 http jqueryui com demos autocomplete option disabled http jqueryui com demos autocomplete option disa
  • 如何在 Silverlight 3 中将 .NET RIA 服务与 MVVM 结合起来?

    NET RIA 服务被描述为 Silverlight 的 n 层框架 我一直想知道这个框架和模型 视图 视图模型模式之间有什么关系 它们是否存在冲突 或者您能看到协同组合的潜力吗 NET RIA 服务和 MVVM 是协同作用的 并不冲突 例
  • 在数字集合中查找最接近的匹配[关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 Locked 这个问题及其答案是locked help locked posts因为这个问题是题外话 但却具有历史意义 目前不接受新的
  • Python3 在 DirectX 游戏中移动鼠标

    我正在尝试构建一个在 DirectX 游戏中执行一些操作的脚本 除了移动鼠标之外 我一切都正常 是否有任何可用的模块可以移动鼠标 适用于 Windows python 3 Thanks I used pynput https pypi or
  • 不同编程语言中的浮点数学

    我知道浮点数学充其量可能是丑陋的 但我想知道是否有人可以解释以下怪癖 在大多数编程语言中 我测试了 0 4 到 0 2 的加法会产生轻微的错误 而 0 4 0 1 0 1 则不会产生错误 两者计算不平等的原因是什么 在各自的编程语言中可以采
  • 为什么这些非捕获正则表达式组不能正常工作?

    所以我花了很多时间在另一个堆栈溢出问题上 同样的问题又出现在上一个问题上 非捕获组并没有像我期望的那样工作 至少我是这么认为的 这是一个愚蠢的例子 类似于其他人的 CSS 测试字符串 这是我的正则表达式 rgb S 这是测试字符串 1px