簡體   English   中英

匹配字符串加上任何非空白字符並插入空白

[英]Match string plus any non-whitespace character and insert whitespace

我正在嘗試匹配並替換許多文件中的字符串。

搜索字符串:

</ANON>[any non-whitespace char], e.g. "</ANON>." or "</ANON>)"

我想在標記和非空白char之間插入空白。

我試圖用sed使用類似的方法做到這一點:

sed -i -e 's/<\/ANON>/S/<\/ANON> /S/g'

但是a,那是行不通的。

任何幫助,不勝感激。

請嘗試以下操作:

sed -i -e 's|\(</ANON>\)\([^[:space:]]\)|\1 \2|g' file

它不是Perl,並且不能對非空格字符使用\\ S。 另外,您應該捕獲組並將其用於替換零件。 另外,您不能使用/ S,因為1)錯誤2)sed使用斜線分隔帶有圖案,替換和標志的零件。

PS或者如果您願意,可以使用Perl:

perl -p -i -e 's|(</ANON>)(\S)|$1 $2|g' file

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM