问题标签 [capturing-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.
regex - Yahoo Pipes 中的正则表达式
我想知道应该应用什么正则表达式来替换1 - 55 of 55
只能进入55
雅虎管道的正则表达式模块。
谢谢
c# - 这个正则表达式如何找到三角数?
作为一系列教育正则表达式文章的一部分,这是对嵌套引用概念的温和介绍。
前几个三角数是:
有很多方法可以检查一个数字是否是三角形的。有一种使用正则表达式的有趣技术,如下所示:
- 给定n,我们首先创建一个长度为n并填充相同字符的字符串
- 然后我们将这个字符串与模式匹配
^(\1.|^.)+$
- n是三角形当且仅当此模式与字符串匹配
以下是一些片段,表明这适用于多种语言:
PHP(在 ideone.com 上)
Java(在 ideone.com 上)
C#(在 ideone.com 上)
所以这个正则表达式似乎有效,但有人可以解释一下吗?
类似问题
regex - 我们如何匹配 a^nb^n?
这是一系列教育正则表达式文章的第二部分。它显示了如何使用前瞻和嵌套引用来匹配非常规语言 a n b n。嵌套引用首先在:这个正则表达式如何找到三角数?
一种原型非正则语言是:
L = { a
nb
n: n > 0 }
这是所有非空字符串的语言,由一定数量的a
' 后跟相等数量的b
' 组成。这种语言中的字符串示例有ab
, aabb
, aaabbb
.
泵引理可以证明这种语言是非常规的。它实际上是一种原型上下文无关语言,可以通过上下文无关文法 S → aSb | ab
生成。
尽管如此,现代正则表达式实现清楚地识别的不仅仅是常规语言。也就是说,它们不是形式语言理论定义的“常规”。PCRE 和 Perl 支持递归正则表达式,.NET 支持平衡组定义。更不“花哨”的功能,例如反向引用匹配,意味着正则表达式不是正则表达式。
但是这个“基本”功能到底有多强大?例如,我们可以L
用 Java 正则表达式识别吗?我们是否可以将环视和嵌套引用结合起来,并使用一种模式String.matches
来匹配诸如ab
, aabb
,aaabbb
等之类的字符串?
参考
- perlfaq6:我可以使用 Perl 正则表达式来匹配平衡文本吗?
- MSDN - 正则表达式语言元素 - 平衡组定义
- pcre.org - PCRE 手册页
- regular-expressions.info - Lookarounds和Grouping and Backreferences
java.util.regex.Pattern
相关问题
ruby - 正则表达式 - 保存重复捕获的组
这就是我正在做的
这就是我得到的
这就是我要的
帮助?我试过但失败了:(
regex - 如何在 JFlex 中使用正则表达式捕获组?
尽管这个问题是关于 JFlex 的,但它可能也适用于其他扫描仪生成器,例如 lex、flex。
如果我有一些规则,我如何在该规则的一部分中创建一个捕获组并将该捕获组的结果用作在规则匹配时调用的代码的参数?
例如,假设我有一个简单的规则来匹配 SGML 标签:
如何捕获内部字符部分([a-zA-Z]+)并将其用作我的 Token 构造函数中的参数?
编辑:我知道我可以简单地使用 yytext() 来获取整个匹配值,然后将代码中的其他部分分开,但这似乎会使事情变得比需要的更复杂。
c# - C# 中的迭代正则表达式捕获
我必须读入一个包含多个坐标的文件。该文件的结构如下:
其中 X 和 Y 是正整数。为了解决这个问题,我想使用一个正则表达式(我认为这通常是一个好主意,因为模式改变时重构最少)。
因此,我开发了以下正则表达式:
但是,当我在数据上测试这个正则表达式时,例如:
正则表达式似乎只记得最后一个 X、Y 和 Coor 组。在这种情况下,Coor 是“12/17”,X 是“1917”,Y 是“2010”。有没有办法生成某种树。所以我找到了一个对象,它给了我所有的 Coor 表达式,在每个 Coor 下都有一个 X 和 Y 分量?
如果可能,我只想使用一个正则表达式,因为格式可能会更改为另一种。
regex - 如何从正则表达式嵌套反向引用中获取内部值
我通过以下方式从服务器接收输入(示例输入数据):
我必须匹配输入并基于匹配,创建一个带有 value 的变量hostname-eventname
。
我的正则表达式
我想在引用变量中分别显示主机和事件的名称,例如$2
or $3
。
例如,考虑这个输入:
<hostname-eventname>
我需要根据从上面的匹配中获取的主机名和事件名创建一个名称的变量。
说,
我不能再应用任何拆分操作。所以没有编程:我只能读取输入数据。是的,正则表达式是 Perl 正则表达式类型。
我不知道我是否澄清了我的问题?
java - 即使模式正确,正则表达式匹配也不起作用
我使用正则表达式已经有几年了,但如果我没记错的话,以下应该可以工作:
m 在运行时不匹配任何内容。这是我在代码中所做的超级简化版本。该示例实际上取自有关正则表达式的 Java 教程!当它不起作用时,我试图重写我的html匹配代码,我去研究,以为我做错了什么......根据互联网,我没有。所以。有谁知道为什么这不起作用?
额外信息,test.matches(the_pattern)
退货false
。小组回溯似乎把事情搞砸了。
regex - 带有 () 问题的正则表达式
我有一个正则表达式
这有 3 个以逗号分隔的部分。
当我尝试将其与类似的东西相匹配时
它与正则表达式不匹配。
但是当我尝试匹配时
它完美匹配。
正则表达式有什么问题?
regex - 识别与某些目标文本匹配的替代项的正则表达式工具或方法?
在我对正则表达式的调试中,我需要找出替代方案中的哪个替代方案实际上导致了匹配。例如,对于目标字符串:
使用正则表达式:
我需要一种方法来知道在上面的正则表达式中,替代"f.*"
实际上导致了匹配。
在一些具有许多替代项的复杂正则表达式中,这对于调试非常具有挑战性。