尝试使用perl进行替换

问题描述 投票:0回答:1

我有这段文字:

rojo

我想进行替换并将其转换为:

rojo77

所以我正在尝试:

perl -pi.bak -e“ s /(ojo)/ $ 177 / g”烤箱.txt

如果我想用文本而不是77代替,我没有问题,但是作为一个数字,我得到了这个结果:

r

我是说,它匹配ojo,但是替换无法正常工作,因此所有匹配的内容都将被删除。如何使用$ 1并在其旁边使用数字?

请帮助!

perl substitution
1个回答
0
投票

首先,由于您事先知道要匹配的确切字符串部分,因此实际上不需要替换变量:

s/ojo/ojo77/

但是,如果您想使用替换变量,可以这样做:

s/(ojo)/${1}77/
© www.soinside.com 2019 - 2024. All rights reserved.