capture-group相关内容

如何在 Go 正则表达式中获取捕获组功能

我正在将一个库从 Ruby 移植到 Go,并且刚刚发现 Ruby 中的正则表达式与 Go (google RE2) 不兼容.我注意到 Ruby &Java(加上其他语言使用 PCRE 正则表达式(perl 兼容,支持捕获组)),所以我需要重新编写我的表达式,以便它们在 Go 中编译正常. 例如,我有以下正则表达式: `(?\d{4})-(?\d{2})-(?\d{2})` 这应该接受如下 ..
发布时间:2021-12-11 23:22:17 其他开发

重复词的正则表达式

我是一个正则表达式新手,我不太明白如何编写一个“匹配"正则表达式的正则表达式.任何重复的连续单词,例如: 春天的巴黎. 不是那个是相关的. 你笑什么?我的正则表达式有那么糟糕吗?? 是否有一个正则表达式可以匹配上面所有的粗体字符串? 解决方案 试试这个正则表达式: \b(\w+)\s+\1\b 这里的 \b 是一个词边界,\1 引用了第一组的捕获匹配. ..
发布时间:2021-12-02 23:37:11 其他开发

如何将一个字符串分成两部分然后以相反的顺序将它们连接为一个新字符串?

这是一个例子: $str="这是字符串 1/4w";$str=preg_replace(?);var_dump($str); 我想在这个字符串中捕获 1/4w 并将这部分移动到字符串的开头. 结果:1/4W 这是字符串 只需给我包含捕获的变量即可. 最后一部分 1/4W 可能不同. 例如1/4w 可以是 1/16W 、 1/2W 、 1W 或 2w 字符 W 可以 ..
发布时间:2021-09-01 18:49:10 PHP

是否有等效的“&"?在 R 的正则表达式中用于反向引用整个匹配?

当我使用 vim 时,我经常使用 & 在替换中反向引用整个匹配项.例如,以下将所有“foo"的实例替换为“foobar": %s/foo/&bar/g 这里的好处是懒惰:我不必在匹配中键入括号,我只需要键入一个字符而不是两个字符作为替换中的反向引用.也许更重要的是,我在打字时没有弄清楚我的反向反射,从而减少了认知负担. 在 R 的正则表达式中是否有与我在 vim 中使用的 & 等效的代码 ..
发布时间:2021-07-06 20:15:13 其他开发

无法在 re.sub() repr 表达式中的函数调用中使用 '\1' 反向引用来捕获组

我有一个字符串 S = '02143' 和一个列表 A = ['a','b','c','d','e'].我想用列表 A 中的相应元素替换“S"中的所有数字. 例如,将 0 替换为 A[0],将 2 替换为 A[2] 等等上.最终输出应该是 S = 'acbed'. 我试过了: S = re.sub(r'([0-9])', A[int(r'\g')], S) 然而,这会产生一个错误 ..
发布时间:2021-07-06 19:31:56 Python

python re.sub - 替代替换模式

我想为 re.sub 提供替代替换模式. 假设我有两种搜索模式作为替代,如下所示: re.sub(r"[A-Z]+|[a-z]+", replacementpattern, string) 而不是提供一种替换模式,我想以某种方式捕获匹配的搜索模式替代并提供替代替换模式.这可能吗?谢谢. 附注.这里的代码细节无关紧要,这是一个普遍问题. 解决方案 您可以将函数传递给 re.s ..
发布时间:2021-06-28 19:21:18 Python

在 Perl 中替换特定的捕获组而不是整个正则表达式

我有一个带有捕获组的正则表达式,可以在更广泛的上下文中匹配我想要的内容.然后我获取捕获组 $1 并将其用于我的需要.这很容易. 但是当我只想替换 $1 的内容而不是整个正则表达式时,如何使用带有 s/// 的捕获组?> 谢谢! -f 解决方案 如果您只需要替换一个捕获,那么使用 @LAST_MATCH_START 和 @LAST_MATCH_END(与 使用英语;参见perldo ..
发布时间:2021-06-15 20:15:38 其他开发

识别正则表达式模式中的捕获组

Java中是否有一种方法(也许带有附加的开源库)来标识 java.util.regex.Pattern 中的捕获组(即,在创建Matcher之前) Java文档中的示例: 捕获组编号为数他们的开括号从左到右.在表达中(((A)(B(C)))),例如四个这样的组: 1((A)(B(C)))2(A)3(B(C))4(C) 原则上,应该可以从(已编译的)模式中识别出这些. 更新 ..
发布时间:2021-05-18 20:56:29 Java开发

Sed追加正则表达式捕获组

如果有人可以提供帮助,我正在尝试使用正则表达式和捕获组执行sed附加操作,但操作不完全: echo“#baseurl = http://mirror.centos.org/centos/$releasever/contrib/$basearch/" |sed -re'/#baseurl=http:\/\/mirror.centos.org(.*)/a baseurl = https:\/\/1 ..
发布时间:2021-04-14 20:18:07 其他开发

如何在Go正则表达式中获取捕获组功能

我正在将库从Ruby移植到Go,并且刚刚发现Ruby中的正则表达式与Go(google RE2)不兼容.引起我注意的是Ruby& Java(加上其他语言使用PCRE正则表达式(与perl兼容,支持捕获组)),因此我需要重新编写表达式,以便它们可以在Go中编译. 例如,我有以下正则表达式: `(?\d{4})-(?\d{2})-(?\d{2})` ..
发布时间:2020-11-16 06:28:30 其他开发

R中具有多个捕获组的正则表达式组捕获

在R中,是否可以从正则表达式匹配中提取组捕获?据我所知, grep , grepl , regexpr , gregexpr , sub 或 gsub 返回 我需要从经过编码的字符串中提取键值对: \((。*?)::(0\。[0-9] +)\) 我总是可以做多个完全匹配的抓取,或者做一些外部(非R)处理,但是我希望我可以在R中做所有事情。是否有一个功能或提供此类功能的 ..
发布时间:2020-09-29 04:54:30 其他开发

C ++ 11正则表达式捕获组的名称

我正在将基于boost的正则表达式转换为C ++ 11正则表达式。我有一个名为 url 的捕获组: \s *? = \s *?(((“(?。*?)”)|('?。*?)')) 通过增强,如果您有 smatch ,则可以调用 match.str(“ url”)以按名称获取捕获组。使用 std :: smatch ,我只能看到索引子匹配项。 如何 ..
发布时间:2020-09-27 20:42:09 其他开发

Java Regex-用一美元捕获字符串,但是当它有两个连续的字符串时不捕获

我早些时候发布了这个问题./p> 但是那还没结束. 在那里适用的所有规则仍然适用. 所以字符串: "%ABC%"结果将产生ABC(在百分号之间捕获内容) 与"$ABC."一样(捕获$之后的内容,当出现另一个美元或点时放弃) "$ABC$XYZ"也会,并且也给出XYZ. 为此添加更多内容: "${ABC}"也应产生ABC. (忽略大括号(如果存在的话-可能不捕获字符?) ..
发布时间:2020-08-01 22:03:26 Java开发

重复单词的正则表达式

我是一个正则表达式新手,我还不太清楚如何编写一个可以与任何重复的连续单词“匹配"的正则表达式,例如: 巴黎在春季. 不是与之相关的. 你为什么笑? 我的我的正则表达式不好吗? 是否有一个单个正则表达式将与上面的所有粗体字符串匹配? 解决方案 尝试以下正则表达式: \b(\w+)\s+\1\b 此处\b是一个单词边界,\1引用了捕获的第一组匹配项. ..
发布时间:2020-06-12 19:35:34 其他开发

将正则表达式中的捕获组解析为树的代码

我需要在正则表达式中标识(可能嵌套)捕获组并创建树.特定的目标是Java-1.6,理想情况下,我希望使用Java代码.一个简单的例子是: “((a(b | c)d(e(f * g))h)" 将被解析为 "a(b|c)d(e(f*g))h" ... "b|c" ... "e(f*g)" ... "f*g" 理想情况下,解决方案应考虑计数表达式,量词等以及转义级别.但是 ..
发布时间:2020-05-25 01:20:51 其他开发

如何有选择地向捕获组添加逗号和空格?

我正在尝试在每个文本块中匹配五个子字符串(总共有100个块). 我匹配99%的文本块,但是关于第3组和第4组有一些错误. 这是一个演示链接: https://regex101.com/r/cW2Is3/4 第3组是“语言的一部分",第4组是英语翻译. 在第一行文本中,det, pro应该全部在第3组中,然后the; him, her, it, them应该在第4组中. ..
发布时间:2020-05-21 21:47:38 PHP

正则表达式:捕获组中的捕获组

简介 (如果您对介绍无聊,可以跳到如果... 怎么办) 这个问题不是特别针对VBScript的(在这种情况下,我只是使用了它):我想找到一种使用常规正则表达式的解决方案(包括编辑器). 当我想创建 示例4的示例时,其中3个捕获组用于将数据拆分为3个单元格在MS Excel中 . 我需要捕获一个完整的模式,然后在其中捕获其他三个模式.但是,在同一个表达式中,我还需要捕获另一种模式, ..
发布时间:2020-05-06 09:23:56 其他开发