1、字符串内用index搜索
$where = index($words,$word); ##从words里找到首次出现word的位置,下标从0开始,查找失败则返回-1;
指定开始搜索的地方:$where = index($words,$word,10); ##从10开始往后寻找,包含10
搜索子串最后出现的位置:
限定返回的最大位置:$where = rindex($words,$word,10); ##只搜索下标为10以前的字符。
2、处理子串
substr参数:依次为:字符串、起始下标、要截取的长度(超出实际长度会以实际长度为准)
省略第三个参数会一直取到字符串结尾:
字符串的起始位置可以为负值,表示从字符串结尾开始倒数:
substr可以和index联合使用,比正则表达式效率高:
假如字符串是一个变量,可以修改字符串被选取的部分,子串的长度不需要与被替代的字符串长度相同:
用绑定操作符对字符串的某一部分进行操作:
另外一种替换方式,返回值为替换前的子串:
3、用sprintf格式化数据
与printf效果相同,但是返回处理好的字符串,而不打印:
处理财务数据例子:
第二行主要在执行条件表达式,而循环主体只是一个占位作用,可以替换为:
4、高级排序
首先,建立自己的排序子程序:
然后,调用:
飞碟操作符(<=>)比较两个数字并返回0、1、-1:
cmp操作符,比较字符串大小:
内嵌子程序:
递减顺序排列:
5、哈希按值排序:
按多值排序:
这篇Perl语言学习笔记详细介绍了字符串的搜索、处理、格式化数据以及排序的方法。包括使用index和rindex函数查找字符串位置,substr进行子串操作,sprintf格式化财务数据,自定义排序函数以及哈希按值排序等高级技巧。

1474

被折叠的 条评论
为什么被折叠?



