Perl正则表达式替换文本的例子

发布时间:2021-01-06编辑:脚本学堂
本文分享二个perl使用正则表达式替换文本的例子,学习下perl中文本替换的方法,有需要的朋友作个参考吧。

例1,
 

复制代码 代码示例:
#!/usr/bin/perl
# perl文本替换操作
# s/<pattern>;/<replacement>;/g 表示把待处理字符串中所有符合 <pattern>; 的模式全部替换为 <replacement>; 字符串,而不是只替换第一个出现的模式。
$string = "I love perl, perl love me";
$string =~ s/(love)/<$1>/g; # 此时 $1 = "love",并且该替换的结果是将 $string 变为 I <love> perl, perl <love> me
print $string, "n";
# s/<pattern>;/<replacement>;/e 表示将把 <replacemnet>; 部分当作一个运算符,这个参数用的不多。举例如下:
$string = "www22cgi44";
$string =~ s/(d+)/$1*2/e; # (/d+)代表 $string 中的一个或多个数字字符,将这些数字字符执行 *2 的操作,
print $string;   # 因此最后 $string 变成了 "www44cgi88"。

例2,perl替换文本
如果要替换掉所有的AAA,可以这样操作:s/AAA/123/g;
咋样,方便吧。。。。
执行后perl只是把结果打印在屏幕,如果将结果保存到新的文件,则这样:
perl perl.pl > new.txt

完整例子:
 

复制代码 代码示例:
#!/usr/bin/perl
$_ = "
abc
ABC
aaa
AAA
BBB
bbb
CCC
ccc
AAA
";
s/AAA/123/;
print "$_n";

您可能感兴趣的文章:

perl命令批量替换文件内容的方法
perl替换文本的小例子
linux批量替换文件内容的三种方法 perl、sed与shell批量替换文件内容
Perl字符串替换的例子
perl合并两个文件(字符串替换)
使用 Perl 的命令行来替换 awk , sed 之类
perl 命令行替换