问题标签 [regex-group]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
164 浏览

c# - Match.Groups[].Value 返回重复值

输入是55,我的正则表达式是^(5{2})$。所以理想情况下(至少对我来说)这应该返回每个以 5 开头并以 5 结尾的字符串,对吧?

但是当我的 c# 如下:

为什么我的字符串outcome返回 5555 而不是 55?

当我从正则表达式中删除括号时,它可以完美运行。

0 投票
4 回答
1715 浏览

python - 正则表达式 Python / 组量词

我想匹配一个看起来像目录的变量列表,例如:

“子目录”的长度是可变的,具有上限(高于 9)。我想对除上面我命名为“相同”的第一个子目录之外的每个子目录进行分组。

我能想到的最好的是:

它已经查找了 4-8 个子目录,但只对最后一个进行分组。为什么?使用组量词有更好的解决方案吗?

编辑:已解决。将使用 split() 代替。

0 投票
2 回答
212 浏览

python - python中的正则表达式:组和|

我找不到如何处理正则表达式,这里有一个例子:

我想用 re.match.group() 做一个正则表达式,它只考虑像 red/xxxx 和像 xxxx/red 这样的那些,并且只对 xxxx 名称进行分组,而不是对:

我想要做:

并获得:

然后做:

并获得:

我当前的代码如下:

但它不起作用,我不能使用 | 在组和 python HOWTO 之间没有帮助。我尝试使用{ }也包括整个两个表达式,但它也不起作用。它一定不是很复杂,但我无法找出问题所在。

0 投票
1 回答
209 浏览

c# - C# 中的正则表达式组

我有包含产品信息的字符串,我想解析该字符串并读取产品信息。

我的字符串如下所示:

我想以这种方式解析此文本:

我怎样才能做到这一点。我知道团体是可能的,但我被困住了,不知道怎么做。

提前致谢。

0 投票
1 回答
1017 浏览

regex - 正则表达式模式:以 X 开头,包含 Y,以 Z 结尾?

我有一个我制作的应用程序的配置文件,要加载我需要首先从配置文件中解析它们的配置。我有点卡住了。

这是配置文件的片段:

我想匹配所有匹配的内容:#(digit)_(text and underscores):(anything)(linebreak),所以基本上一次一行。我还想对结果进行分组,所以我得到第一个数字,然后是数字之后的文本,最后是分号之后的文本(在本例中为 url)。

到目前为止,这是我想出的:

但这不是我想要的。它只匹配一行,并且不对结果进行分组。

0 投票
1 回答
96 浏览

java - Java 链接正则表达式

我必须解析以下示例输出。要求是后面不应该有文本,Fabric management FPC state:即它应该是空\s的。下一部分有点棘手,我被困在那里。所以每个FPC人都有一个或多个PFE,每个FPE人都有一个或多个SIB。每个 有四种可能的状态SIB。他们是Plane Enabled, Link Error, Desination Error and Plane Disabled。我应该使用正则表达式解析它并跟踪每个FPC, PFE and SIB. 我不知道如何'linked'在正则表达式中有一个组。

到目前为止我所拥有的是

0 投票
1 回答
625 浏览

objective-c - Objective-C 中的 NSRegularExpression

就像输入字符串(self)上面的代码一样:

我想得到for groups,[04:51.50][04:45.50][04:43.50][04:39.50]但我只能得到最后一个[04:39.50]

NSRegularExpression我搜索时只能得到最后一组吗(($1)($2)($3)){2}

0 投票
2 回答
59 浏览

java - 意外的正则表达式结果

我已经看到了几个关于如何检索和删除分隔符之间的字符串的示例。但是,我创建了一个非常简单的测试用例,并且根据各种示例得到了错误的输出。为什么我要取回我想用作搜索源的字符串而不是我正在搜索的字符串?

我得到字符串56.0F (13.3C)作为我的输出。

我期待着56.0F回来。

我还尝试使用模式匹配器:

2 是打印到控制台的内容

关于我做错了什么的任何想法?我已经看了几个小时了。谢谢!

0 投票
4 回答
2482 浏览

ruby - 使用正则表达式 - 重复模式

我正在尝试使用正则表达式来匹配一些文本。

以下模式是我想要收集的。

我想获取动态数量的变量,而不是固定的两个或三个变量。有没有办法做到这一点?我有一个现有的正则表达式:

这将捕获标识符和最多三个变量。

编辑:只是我,还是正则表达式没有我想象的那么强大?

0 投票
6 回答
16540 浏览

regex - 在正则表达式中否定反向引用

如果字符串具有这种预测格式:

其中 " (引号)也可能是 ' (单引号),并且结束字符(' 或 ")将与开始字符相同。我想匹配引号之间的字符串。

(两个 \s 允许 = 符号附近的任何空格)

第一个“捕获的组”(在第一对括号内) - 应该与应该是 ' 或 " 的开头引号匹配然后 - 我应该允许任何数量的字符不是第一组中捕获的字符,然后我期望在组中捕获的字符(括起来的引号)。

(所需的字符串应在第二个捕获组中捕获)。
但这不起作用。

这样做:

但我想确保左引号和右引号(双引号或单引号)相同。


编辑
目标基本上是获取一个锚的开始标签,该锚的类属性中包含某个类名,我想涵盖类属性的罕见情况,包括 (') 或 (")。

遵循此处的所有建议,我使用了以下模式:

含义
找到一个标签打开的标志。
允许任何空格。
找到单词a。
允许任何非结束标签。
Find "class (any spaces) = (any spaces)"
获取开引号,以下之一:(" or ' or \" or \')。
来自 Alan Moore 的回答:允许任何不是开头引号的字符。
find classname
允许任何不是开头引号的字符。
找到与开头相同的结尾引号。
允许任何未关闭标签字符。
找到结束标记 char。