这是输入文件
{1:IRVTUS30XXX}{2:I304dfaffaefa}{3:fewfa]}
:15A:
:20:1234556
:22:dsafas
dsafafaf
erwfafgr
:23:fewfd
:24:firh
:60:uncenjnjcdv
:72:uenuernfk
12345
-}
这里我想从输入文件中删除一些标签信息。 (标签是:15A :: 22:在冒号之间称为标签)
如果我想删除标签20,我可以使用以下perl命令:
perl -i -pe 's/:20:(.*)\r\n//g' file
但是对于像这样的标签:22:或:72:它的多个行标签..我怎么能删除那些?
答案 0 :(得分:0)
答案 1 :(得分:0)
删除标签22的示例代码(适用于多行或单行):
% perl -00 -pe 's/^:22:.*?(?=(?:^:\d+\w*|$))//ms' file.txt
{1:IRVTUS30XXX}{2:I304dfaffaefa}{3:fewfa]}
:15A:
:20:1234556
:23:fewfd
:24:firh
:60:uncenjnjcdv
:72:uenuernfk
12345
-}