【1 while s/\b(\w+) \1\b/$1/gi;】中\1如何理解?

【1 while s/\b(\w+) \1\b/$1/gi;】中\1如何理解?

摘自《大骆驼》

QUOTE:
# 删除重复的单词(以及三重的(和四重的。。。))
  1 while s/\b(\w+) \1\b/$1/gi;

请教:此处的\1如何理解?看了大骆驼相关内容,感觉有些晦涩......没有理解,惭愧。
请大大们出手指教,给个通俗,详细的解释吧,谢谢!
\1 就是正则表达式里面第一个括号里面的内容,你可以理解为 $1 ,所以"(\w+) \1"可以表示重复的单词,就是把重复的单词替换成单个单词。
哦,原来如此。多谢指点!白话文就通俗多了
其实你的表达式无法达到匹配三重和四重乃至n重。
可以修改下

[Copy to clipboard] [ - ]
CODE:
s/\b(\w+?)(\1+?)\b/$1/gi;