Perl Substr()函数处理字符串
substr函数只处理较长字符串中的一小部分内容,它需要三个参数:一个原始字符串、一个从零起算的起始位置,以及子字符串的长度。找到的子字符串会被返回。
substr的大致用法如下:
#正向提取:substr(“hello world”,0,2)#hesubstr(“hello world”,2,2)#llsubstr(“hello world”,3)#lo world#反向提取:substr(“hello world”,-1,2)#rlsubstr(“hello world”,-2)#ld#特例:加入你要提取的字符串长度超过原字符串的长度时,此函数不会报错。#正向提取substr(“hello world”,0,50)#hello worldsubstr(“hello world”,1,50)#ello world#反向提取substr(“hello world”,-50)#hello worldsubstr(“hello world”,-1,50)#hello worl
除了上述的一般用法外,substr还有一些特殊的用法:
my $string = "hello world"substr("$string", 0, 5) = "Goodbye"# $string现在的值为“Goodbye, world”,非常有意思。#用来取代的字符串的长度不一定要与被取代的字符串的长度相等,其会自行调整长度my $string_new = substr("$string", 0, 5, "Goodbye")#此用法与前者等同#当然也可以结合正则表达式使用substr("$string", 0, 5) =~ s/ll/aa/g#只针对前5个字符的处理
赞 (0)
