问题标签 [capture-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 投票
9 回答
57504 浏览

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

在 R 中,是否可以从正则表达式匹配中提取组捕获?据我所知,没有grep, grepl, regexpr, gregexpr, sub, 或gsubreturn 组捕获。

我需要从这样编码的字符串中提取键值对:

我总是可以只做多个完全匹配的 grep,或者做一些外部(非 R)处理,但我希望我可以在 R 中完成这一切。是否有一个函数或一个包提供这样的函数来做到这一点?

0 投票
2 回答
1996 浏览

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

我需要在正则表达式中识别(可能嵌套的)捕获组并创建一棵树。特定的目标是 Java-1.6,我最好喜欢 Java 代码。一个简单的例子是:

“(a(b|c)d(e(f*g))h)”

这将被解析为

理想情况下,该解决方案应考虑计数表达式、量词等以及转义级别。但是,如果这不容易找到更简单的方法可能就足够了,因为我们可以限制使用的语法。

编辑。澄清。我想解析正则表达式字符串本身。为此,我需要知道 Java 1.6 正则表达式的 BNF 或等效项。我希望有人已经这样做了。

结果的副产品是该过程将测试正则表达式的有效性。

0 投票
3 回答
4992 浏览

regex - C# 正则表达式:如何用运行时生成的字符串替换标记?

给定以下输入和正则表达式字符串:

如何用我的“ReplaceToken”函数的返回值替换每个令牌(即 ${Principal}、${Rate} 和 ${Years})?

0 投票
14 回答
125218 浏览

regex - 重复单词的正则表达式

我是一个正则表达式新手,我不知道如何编写一个正则表达式来“匹配”任何重复的连续单词,例如:

春天巴黎。

并不是有关系。

你笑什么?我的正则表达式那么糟糕吗?

是否有一个正则表达式可以匹配上面所有的粗体字符串?

0 投票
4 回答
4162 浏览

c# - 从c#中的字符串中提取最后一个匹配项

我有表格中的字符串[abc].[some other string].[can.also.contain.periods].[our match]

我现在想匹配字符串“我们的匹配”(即不带括号),所以我玩了环顾四周之类的东西。我现在得到了正确的匹配,但我认为这不是一个干净的解决方案。

语言是 .net/c#。如果有一个不涉及正则表达式的更简单的解决方案,我也很高兴知道

真正让我恼火的是,我不能用(.*?)它来捕获字符串,因为看起来非贪婪不适用于lookbehinds。

我也试过:Regex.Split(str, @"\]\.\[").Last().TrimEnd(']');,但我也不是很喜欢这个解决方案

0 投票
2 回答
65 浏览

c# - 帮助正则表达式

我试图Sysdba.从字符串中取出单词。这是一个例子,我的结果是PRODUCTION

我创建了正则表达式

但是,当我打电话时,var tmp = CatagoryRegex.Match(SelectText);我没有得到任何匹配。我知道我很可能犯了一个简单的错误,但我无法发现它。

0 投票
2 回答
4808 浏览

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

Java中有没有办法(可能有一个额外的开源库)来识别a中的捕获组java.util.regex.Pattern(即在创建匹配器之前)

Java 文档中的示例:

捕获组通过从左到右计算它们的左括号来编号。例如,在表达式 ((A)(B(C))) 中,有四个这样的组:

原则上应该可以从(编译的)模式中识别这些。

更新:从@Leniel 和 eslewhere 看来,这个工具(“命名组”)将于 2011 年中期出现在 Java 7 中。如果我等不及我可以使用 jregex,尽管我不太确定 API 是什么是。

0 投票
3 回答
11501 浏览

regex - 带有捕获组的正则表达式中的空格问题

我有一个正则表达式,我试图匹配以下类型的数据,每个标记由未知数量的空格分隔。

更新:“文本”几乎可以是任何字符,这就是我.*最初的原因。重要的是,它还可以包含空格。

  1. 文本
  2. 文字 01
  3. 文本 01 的 03
  4. 文本 01(共 03 个)
  5. 正文 01-03

我想将“文本”、“01”和“03”作为单独的组捕获,除“文本”之外的所有内容都是可选的。到目前为止,我能做的最好的是:

这匹配#3-#5,并将它们放入正确的捕获组中。但是,我不明白为什么当我?在末尾添加一个附加项以使表达式的一部分位于01可选之后,我的捕获组变得很时髦。

上面的 RegEx 匹配 #2-#5,但捕获组仅对 #2 和 #5 是正确的。

这似乎是一个简单的正则表达式,所以我不知道为什么我会遇到这么多麻烦。

这是我用来帮助我调试的在线 RegEx 评估器的链接:http ://regexr.com?2tb64 。该链接已经有第一个 RegEx 和填充的测试数据。

0 投票
1 回答
4447 浏览

java - 正则表达式捕获未知数量的重复组

我正在尝试编写一个正则表达式以在 Java 程序中使用,该程序将识别可能出现在输入中未知次数的模式。我愚蠢的小例子是:

String patString = "(?:.*(h.t).*)*";

然后我尝试通过循环 matcher.group(i) 从“小屋很热”之类的行中访问匹配项。它只记住最后一个匹配项(在这种情况下,“热”),因为只有一个捕获组——我猜 matcher.group(1) 的内容会在捕获组被重用时被覆盖。不过,我想要的是某种同时包含“小屋”和“热”的数组

有一个更好的方法吗?FWIW,我真正想做的是在信号词之后拿起所有(可能是多词)专有名词,中间可能有其他词和标点符号。因此,如果“saw”是信号并且我们有“我看到 Bob 和 John Smith 以及他的妻子 Margaret”,我想要 {"Bob","John Smith","Margaret"}。

0 投票
2 回答
3519 浏览

regex - grep 捕获正则表达式

我正在尝试使用 grep 来捕获以下数据:

我有

两个问题:

  1. 它可以捕获 \\.xy$ 之类的东西,但不能捕获 \\.xy\\.ef$
  2. 返回的结果最后有文字 $,为什么?