加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

perl中tr的研究

发布时间:2020-12-15 21:03:09 所属栏目:大数据 来源:网络整理
导读:perl中有三种模式 ?m//,s///,tr///; 前两种就不多说了,经常出现。这里说下tr: 很多人用习惯了s///,发现和tr有很多相同的地方,都是将字符串替换成自己想要的内容。 tr的重要作用在于“转换”. ? 例如: 大小写转化: $str = "Hello World"; $str =~ tr/a-
perl中有三种模式 ?m//,s///,tr///;
前两种就不多说了,经常出现。这里说下tr:
很多人用习惯了s///,发现和tr有很多相同的地方,都是将字符串替换成自己想要的内容。
tr的重要作用在于“转换”.
?
例如:
大小写转化:
$str = "Hello World";
$str =~ tr/a-zA-Z/A-Za-z/; ?#这里是将大写转为小写,小写转化为大写
print $str; ?#输出hELLO wORLD

计算字符串的个数:
? ? ? ??$str = "Hello World";
my $count=$str =~ tr/a-z/a-z/; ?#这里只计算小写字母的出现个数,大写写出A-Z
print $count; ? ? # 输出8

关于tr的修饰符有三个: /c,/d./s
perldoc这样解释:
c Complement the SEARCHLIST.?
d Delete found but unreplaced characters.?
s Squash duplicate replaced characters.?

$str = "Hello World";
$str =~ tr/ll/*/c; ?#将不是l或者ll全部转化成*
print $str; ?#输出**ll*****l*
?
$str = "Hello World";
$str =~ tr/ll/*/d; #与c修饰符相反
print $str; ?#输出He**o Wor*d
$str = "Hello World";
$str =~ tr/ll/*/s; ?#将连续的ll变为一个*号
print $str;#输出He*o Wor*d

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读