我需要用*
符号突出显示文本中的每个重复单词。
例如
lol foo lol bar foo bar
应该
lol foo *lol* bar *foo* *bar*
我尝试使用以下命令:
echo "lol foo lol bar foo bar" | sed -r -e 's/(\b[a-zA-Z]+\b)([^*]+)(\1)/\1\2*\3*/'
它给了我:
lol foo *lol* bar foo bar
然后我添加了g
标志:
lol foo *lol* bar foo *bar*
但foo
没有突出显示。
我知道它会发生,因为sed
如果找到匹配项就不会回头。
我可以处理它sed
吗?