正则表达式-在空格或行首之后匹配一对重复的字符

卢卡斯

我已经尝试学习正则表达式已有一段时间了,有时我碰到了一些我难以理解的东西。

今天早些时候,我试图在空格或行首之后匹配一对重复的字符,因此我首先找到了一种匹配空格或行首的方法: (^|\s)

然后,要匹配一对(字母数字)字符: (\w)\1+

两者都能很好地工作,但是当我将它们放在一起时(^|\s)(\w)\1+,那是行不通的。

您知道为什么这是错误的,实现我想要的最佳方法是什么?

顺便说一句,我正在使用这个网站来测试我的表情。

非常感谢你!

阿努巴瓦

试试这个正则表达式:

(?:^|\s)(\w)\1

问题是您正在使用捕获组(^|\s),就变成了\1(\w)变得\2因此您正则表达式不起作用。

(?:..)是非捕获组,因此(\w)保留\1(第一个捕获组)。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章