capture-group相关内容
我正在将一个库从 Ruby 移植到 Go,并且刚刚发现 Ruby 中的正则表达式与 Go (google RE2) 不兼容.我注意到 Ruby &Java(加上其他语言使用 PCRE 正则表达式(perl 兼容,支持捕获组)),所以我需要重新编写我的表达式,以便它们在 Go 中编译正常. 例如,我有以下正则表达式: `(?\d{4})-(?\d{2})-(?\d{2})` 这应该接受如下
..
我是一个正则表达式新手,我不太明白如何编写一个“匹配"正则表达式的正则表达式.任何重复的连续单词,例如: 春天的巴黎. 不是那个是相关的. 你笑什么?我的正则表达式有那么糟糕吗?? 是否有一个正则表达式可以匹配上面所有的粗体字符串? 解决方案 试试这个正则表达式: \b(\w+)\s+\1\b 这里的 \b 是一个词边界,\1 引用了第一组的捕获匹配.
..
这是一个例子: $str="这是字符串 1/4w";$str=preg_replace(?);var_dump($str); 我想在这个字符串中捕获 1/4w 并将这部分移动到字符串的开头. 结果:1/4W 这是字符串 只需给我包含捕获的变量即可. 最后一部分 1/4W 可能不同. 例如1/4w 可以是 1/16W 、 1/2W 、 1W 或 2w 字符 W 可以
..
示例文本: \- !ruby/object:DynamicAttribute属性:资源 ID:“1"资源类型:申请人string_value: "迈克尔"整数值:编号:“35972390"日期值:姓名:名字属性缓存:{}\- !ruby/object:DynamicAttribute属性:资源 ID:“1"资源类型:申请人string_value: "约翰逊"整数值:编号:“35533149"日
..
当我使用 vim 时,我经常使用 & 在替换中反向引用整个匹配项.例如,以下将所有“foo"的实例替换为“foobar": %s/foo/&bar/g 这里的好处是懒惰:我不必在匹配中键入括号,我只需要键入一个字符而不是两个字符作为替换中的反向引用.也许更重要的是,我在打字时没有弄清楚我的反向反射,从而减少了认知负担. 在 R 的正则表达式中是否有与我在 vim 中使用的 & 等效的代码
..
我有一个字符串 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) 然而,这会产生一个错误
..
我想为 re.sub 提供替代替换模式. 假设我有两种搜索模式作为替代,如下所示: re.sub(r"[A-Z]+|[a-z]+", replacementpattern, string) 而不是提供一种替换模式,我想以某种方式捕获匹配的搜索模式替代并提供替代替换模式.这可能吗?谢谢. 附注.这里的代码细节无关紧要,这是一个普遍问题. 解决方案 您可以将函数传递给 re.s
..
我有一个带有捕获组的正则表达式,可以在更广泛的上下文中匹配我想要的内容.然后我获取捕获组 $1 并将其用于我的需要.这很容易. 但是当我只想替换 $1 的内容而不是整个正则表达式时,如何使用带有 s/// 的捕获组?> 谢谢! -f 解决方案 如果您只需要替换一个捕获,那么使用 @LAST_MATCH_START 和 @LAST_MATCH_END(与 使用英语;参见perldo
..
Java中是否有一种方法(也许带有附加的开源库)来标识 java.util.regex.Pattern 中的捕获组(即,在创建Matcher之前) Java文档中的示例: 捕获组编号为数他们的开括号从左到右.在表达中(((A)(B(C)))),例如四个这样的组: 1((A)(B(C)))2(A)3(B(C))4(C) 原则上,应该可以从(已编译的)模式中识别出这些. 更新
..
我想解析以下文本文件以获取各个字段: host_group_web =()host_group_lbnorth =(lba050 lbhou002 lblon003) 我要提取的字段以粗体显示 host_group_ 网络 =() host_group_ lbnorth =( lba505 lbhou002 lblon003 ) host_group_web在()之间没有任何
..
如果有人可以提供帮助,我正在尝试使用正则表达式和捕获组执行sed附加操作,但操作不完全: echo“#baseurl = http://mirror.centos.org/centos/$releasever/contrib/$basearch/" |sed -re'/#baseurl=http:\/\/mirror.centos.org(.*)/a baseurl = https:\/\/1
..
我正在将库从Ruby移植到Go,并且刚刚发现Ruby中的正则表达式与Go(google RE2)不兼容.引起我注意的是Ruby& Java(加上其他语言使用PCRE正则表达式(与perl兼容,支持捕获组)),因此我需要重新编写表达式,以便它们可以在Go中编译. 例如,我有以下正则表达式: `(?\d{4})-(?\d{2})-(?\d{2})`
..
在R中,是否可以从正则表达式匹配中提取组捕获?据我所知, grep , grepl , regexpr , gregexpr , sub 或 gsub 返回 我需要从经过编码的字符串中提取键值对: \((。*?)::(0\。[0-9] +)\) 我总是可以做多个完全匹配的抓取,或者做一些外部(非R)处理,但是我希望我可以在R中做所有事情。是否有一个功能或提供此类功能的
..
我正在将基于boost的正则表达式转换为C ++ 11正则表达式。我有一个名为 url 的捕获组: \s *? = \s *?(((“(?。*?)”)|('?。*?)')) 通过增强,如果您有 smatch ,则可以调用 match.str(“ url”)以按名称获取捕获组。使用 std :: smatch ,我只能看到索引子匹配项。 如何
..
我早些时候发布了这个问题./p> 但是那还没结束. 在那里适用的所有规则仍然适用. 所以字符串: "%ABC%"结果将产生ABC(在百分号之间捕获内容) 与"$ABC."一样(捕获$之后的内容,当出现另一个美元或点时放弃) "$ABC$XYZ"也会,并且也给出XYZ. 为此添加更多内容: "${ABC}"也应产生ABC. (忽略大括号(如果存在的话-可能不捕获字符?)
..
我是一个正则表达式新手,我还不太清楚如何编写一个可以与任何重复的连续单词“匹配"的正则表达式,例如: 巴黎在春季. 不是与之相关的. 你为什么笑? 我的我的正则表达式不好吗? 是否有一个单个正则表达式将与上面的所有粗体字符串匹配? 解决方案 尝试以下正则表达式: \b(\w+)\s+\1\b 此处\b是一个单词边界,\1引用了捕获的第一组匹配项.
..
我需要在正则表达式中标识(可能嵌套)捕获组并创建树.特定的目标是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" 理想情况下,解决方案应考虑计数表达式,量词等以及转义级别.但是
..
我正在尝试在每个文本块中匹配五个子字符串(总共有100个块). 我匹配99%的文本块,但是关于第3组和第4组有一些错误. 这是一个演示链接: https://regex101.com/r/cW2Is3/4 第3组是“语言的一部分",第4组是英语翻译. 在第一行文本中,det, pro应该全部在第3组中,然后the; him, her, it, them应该在第4组中.
..
为什么此代码只吐出整个正则表达式匹配而不是捕获组? 输入 @"A long string containing Name: A name here amongst other things" 预期输出 A name here 实际输出 Name: A name here 代码 NSString *html
..
简介 (如果您对介绍无聊,可以跳到如果... 怎么办) 这个问题不是特别针对VBScript的(在这种情况下,我只是使用了它):我想找到一种使用常规正则表达式的解决方案(包括编辑器). 当我想创建 示例4的示例时,其中3个捕获组用于将数据拆分为3个单元格在MS Excel中 . 我需要捕获一个完整的模式,然后在其中捕获其他三个模式.但是,在同一个表达式中,我还需要捕获另一种模式,
..