regex 正则表达式来捕获一组重复的两个单词

rdrgkggo  于 2023-06-25  发布在  其他
关注(0)|答案(2)|浏览(95)

我试图形成一个表达式,将捕获一组重复的两个单词。例如:
Glass Magnifying Glass Magnifying.svg
应变为:
Glass Magnifying.svg
我有一个很好的表达式,可以捕获单个单词的重复:
\b(\w+)\s+\1\b
但我不知道如何修改它来捕获双字重复。
我没有包含语言标记,因为我在一个名为Renamer的程序中使用表达式。
任何帮助将不胜感激!

编辑:

更多示例如下:
之前:

Glass Magnifying Glass Magnifying.svg
Question Mark Question Mark.svg
Quote Left Quote Left Alt.svg
Read More Read More.svg
Stroke Comment Stroke Comment Alt2 Alt.svg
Stroke Heart Stroke Heart.svg

正则表达式之后:

Glass Magnifying.svg
Question Mark.svg
Quote Left Alt.svg
Read More.svg
Stroke Comment Alt2 Alt.svg
Stroke Heart.svg
niwlg2el

niwlg2el1#

您可以使用以下内容。

(\w+\s\w+)\s\1

或者,如果单词带有连字符。

([\w-]+\s[\w-]+)\s\1
ckocjqey

ckocjqey2#

您可以在第一次比赛中加入空格:

\b([\w ]+)\s+\1\b

https://regex101.com/r/OUEczL/1

相关问题