javascript - 用正则表达式匹配同一个词两次,不关心这个词是什么

标签 javascript regex

接受以下输入:

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

假设我想匹配 x.x,其中点的两边 x 相同。所以我不想匹配x.y。因此,对于示例输入,我会得到 foo.foobar.bar 而不是 baz.foo

我想做的是类似

(\w+)\.$1

但这当然行不通。

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

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

最佳答案

试试这个:

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

这使用 \1 backreference匹配第一个捕获组 (\w+) 的文本。

测试于 http://regexpal.com/和工作。

关于javascript - 用正则表达式匹配同一个词两次,不关心这个词是什么,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14856532/

相关文章:

javascript - 主干JS : is there a list of default events one can bind to?

javascript - 如何使用 AngularJS trim View 中的变量?

python - 在 python 中循环一个正则表达式替换一个字符串——缺少一些明显的东西

java - 匹配最接近的组,我无法用语言来表达

php - 在 PHP 中使用正则表达式进行 iOS 检测

java - 使用 Java 中的正则表达式替换 yyyy-MM-dd 模式末尾的特定符号

javascript - 如何在带有 worker-loader 的 create-react-app 中使用 Web Worker?

javascript - Angular 教程不适用于 fiddle

php - 在 SQL 查询中替换多个值+?

regex - 电子邮件地址的本地部分是否有最小长度要求?