sed/awk/python 替换字符串匹配后字符之间的所有空格

sed/awk/python 替换字符串匹配后字符之间的所有空格

我想在初始匹配后删除字符之间的所有空格。一个例子是

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场比赛开始进行替换

相关内容