我想在初始匹配后删除字符之间的所有空格。一个例子是
exmpl 0 t h i s a r e t he spaces to d e l e t e
exmpl 1 m o r e spaces to d e l
exmpl 2 o r s m t h completely d i f f e r e n t
exmpl 12 y e t another l i n e
其输出应该是:
exmpl 0 thisarethespacestodelete
exmpl 1 morespacestodel
exmpl 2 orsmthcompletelydifferent
exmpl 12 yetanotherline
初始文本和数字之间以及数字和后续文本之间的空格也可以是制表符。
我能够匹配第一部分和第二部分,例如,在 sed 中
sed -i 's/\(exmpl\s*[0-9]*\s*\)\(.*\)/\1\2/'
但我无法弄清楚删除 \2 中的所有空格。
答案1
使用 sed:
sed -e 's/ //3g' file
exmpl 0 thisarethespacestodelete
exmpl 1 morespacestodel
exmpl 2 orsmthcompletelydifferent
exmpl 12 yetanotherline
从第3场比赛开始进行替换