繁体   English   中英

用正则表达式将相同的单词匹配两次,而不是关心单词是什么

[英]Matching the same word twice with a regular expression, not caring what the word is

请参考以下内容:

foo.foo aefhiuafhiauefheiauh bar.bar jgoeiajgoieajogiae baz.foo ogiejaogijaeoigjea

假设我想匹配xx ,其中x是点的两侧相同。 所以我不想匹配xy 所以使用示例输入,我会得到foo.foobar.bar而不是baz.foo

我想做的就像是

(\w+)\.$1

但当然这不起作用。

这是否可以使用正则表达式以任何理智的方式,或者我应该匹配xy并处理代码中的xy的比较?

为了这个问题,假设我使用的是Javascript正则表达式引擎。

试试这个:

/(\w+)\.\1/g

http://regexpal.com/上测试并且有效。

编辑:添加全局修饰符,如TomTom正确建议。

应该与全球!

/(\w+)\.\1/g;

我正在为使用Visual Studio 2017的用户找到在同一行中重复的相同变量名称的人们接受的答案进行调整。

我用的搜索是:

(\w+) = \1 [&]

我正在寻找VB字符串连接,我想考虑用stringbuilder或简化的&=运算符替换它们,所以我想要替换:

MyString = MyString & something

MyString &= something

该表达式与find all一起使用,因此我能够找到所有实例

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM