Perl Substr()函数处理字符串

Posted 茶与生信

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Perl Substr()函数处理字符串相关的知识,希望对你有一定的参考价值。

substr函数只处理较长字符串中的一小部分内容,它需要三个参数:一个原始字符串、一个从零起算的起始位置,以及子字符串的长度。找到的子字符串会被返回。

substr的大致用法如下:

#正向提取:substr(“hello world”,0,2)#he
substr(“hello world”,2,2)#ll
substr(“hello world”,3)#lo world
#反向提取:substr(“hello world”,-1,2)#rl
substr(“hello world”,-2)#ld
#特例:加入你要提取的字符串长度超过原字符串的长度时,此函数不会报错。
#正向提取substr(“hello world”,0,50)#hello world
substr(“hello world”,1,50)#ello world#反向提取substr(“hello world”,-50)#hello world
substr(“hello world”,-1,50)#hello worl

除了上述的一般用法外,substr还有一些特殊的用法:

my $string = "hello world"substr("$string", 0, 5) = "Goodbye"# $string现在的值为“Goodbye, world”,非常有意思。#用来取代的字符串的长度不一定要与被取代的字符串的长度相等,其会自行调整长度
my $string_new = substr("$string"05"Goodbye")#此用法与前者等同
#当然也可以结合正则表达式使用substr("$string"05) =~ s/ll/aa/g#只针对前5个字符的处理


以上是关于Perl Substr()函数处理字符串的主要内容,如果未能解决你的问题,请参考以下文章

substr函数在perl和php中的一点不同

如何有条件地将 C 代码片段编译到我的 Perl 模块?

05-perl语言中的字符串处理及排序

Regexp_substr 将字符串解析成片段

解决方案电影标题中缺少代码的片段,完成挑战更多[关闭]

Oracle 字符串操作 - SUBSTR 和 INSTR函数