替换除行尾之外的值

时间:2017-02-09 20:59:12

标签: regex sed

所以我有一个文本文件,其中包含ASCII STX字符(可以用\ x02定位)。如果它们不在一行的末尾,我想删除它们。

svn add filename.html

如果字符不在该行的末尾,如何删除该字符?

1 个答案:

答案 0 :(得分:3)

您可以在需要删除一个或多个字符后匹配并捕获任何字符,以便稍后通过反向引用将其恢复:

sed -i 's/\x02\{1,\}\(.\)/\1/g' foo.txt

此处,\x02\{1,\}匹配您需要删除的一个或多个字符,\(.\)将匹配并捕获到第1组中的任何字符,\1将恢复结果中捕获的字符。< / p>