将同一字符的序列替换为单个字符

・1 分钟阅读

 $ echo heeeeeeelllo | sed 's/(.)1+/1/g'

说明

也就是说,这将输出"helo"

  • (.) --捕获任何角色
  • 1 --指的是最后一个捕获的字符串在我们的例子中是前一个字符,如此有效地,(.)1匹配同一个字符对,例如,aabb??等等,
  • + --匹配之前的一个或多个模式
  • ,然后我们替换我们与1匹配的内容,1是最后捕获的字符串它是序列中的第一个字母如aaaabbbbbbbcc
Hujiuxiang profile image