我有这个班轮:
perl -pe 's|.*?((\d{1,3}\.){3})xxx.*|\1|'
我通过一些输入提供此命令,例如192.168.1.xxx
,它可以正常工作。现在,我想在输出序列中附加一个0,但当然如果我只是在\1
之后追加0,它将被解析为第十个捕获组。如何将它连接到\1
指令?
答案 0 :(得分:11)
你should use $1
instead of \1
in substitutions。然后你可以使用大括号来明确地写它:
perl -pe 's|.*?((\d{1,3}\.){3})xxx.*|${1}0|'