perl的一些函数(二)
1. tr 转换 转换不是替换(tr///==y///)
tr/searchlist/replacementlist/用于查找某个一个字符串,并用replacementlist替换,可以使用正则表达式
my $str="this Is A teST";
$str=~tr/a-z/A-Z/; 把小写转换为大写 会输出THIS IS A TEST
s/// options
g 全局替换
i 忽略大小写
my $str3="this is a test\n";
$str3=~s/t/haha/g; =====>hahahis is a hahaeshaha
print $str3;
$str3=~s/HaHa/t/ig; =====>this is a test
print $str3;
this is a test
tr 与 替换的区别
tr可以使用正则表达式,替换不行,没法使用$str=~s/a-z/A-Z/; 不会有任何改变 tr/ab/ABC/ 替换原则是a->A b->B 而s/ab/ABC/会将ab->ABC
- tr///
The transliteration operator. Same as
y///.
$count = $str3=~ tr/i/i/; # count the stars in $sky count the number of a and store into $count
统计i的个数存放在$count
#!/usr/bin/perl
use strict;
my $str1="this Is A tr TEST";
my $str2="this Is A tr TEST";
$str1=~s/t/T/g;
$str2=~tr/a-z/A-Z/;
print "$str1\n";
print "$str2\n";
my $str3="this is a test\n";
my $count=$str3=~tr/i/i/;
print "\ncount the number of i --->$count<----\n";
结果:
D:\>perl tr.pl
This Is A Tr TEST
THIS IS A TR TEST
count the number of i --->2<----
tr Options:
c Complement the SEARCHLIST. 清单没写到的就补给他右边清单的最后一个字元
d Delete found but unreplaced characters. 对照表中没有的项目就删掉
s Squash duplicate replaced characters. 重复的字符变成一个my $strs="have a good day\n";
$strs=~tr/a/_/c; =====> _a___a_______a__
print $strs;
$strs=~tr/ao/Ao/s; =====>hAve A god dAy 两个O变成一个
my $strs="have a good day\n";
$strs=~tr/hag/HA/d; ===>HAve A ood dAy
参考:http://www.cnblogs.com/blueicely/archive/2012/12/13/2816371.html
生成随机数:
rand
Returns a random fractional number greater than or equal to 0 and less than the value of EXPR.
example:
int(rand(10))
returns a random integer between 0 and 9, inclusive.
perl的一些函数(二)的更多相关文章
- 【Perl学习笔记】1.perl的ref 函数
perl有引用的概念:一组数据实际上是另一组数据的引用.这些引用称为指针,第一组数据中存放的是第二组数据的头地址.引用的方式被用得相当普遍,特别是在面向对象的模块.函数的参数传递等常见.但perl对每 ...
- perl的map函数
perl的map函数的使用: 语法 map EXPR, LIST map BLOCK LIST 定义和使用 对list中的每个元素执行EXPR或BLOCK,返回新的list.对每一此迭代,$_中保存了 ...
- python之内置函数(二)与匿名函数、递归函数初识
一.内置函数(二)1.和数据结构相关(24)列表和元祖(2)list:将一个可迭代对象转化成列表(如果是字典,默认将key作为列表的元素).tuple:将一个可迭代对象转化成元组(如果是字典,默认将k ...
- c/c++ 图相关的函数(二维数组法)
c/c++ 图相关的函数(二维数组法) 遍历图 插入顶点 添加顶点间的线 删除顶点 删除顶点间的线 摧毁图 取得与v顶点有连线的第一个顶点 取得与v1顶点,v1顶点之后的v2顶点的之后的有连线的第一个 ...
- python---day14( 内置函数二)
内置函数二一:匿名函数 lambda函数 lambda 表示匿名函数,不需要用def 来申明. 语法: 函数名=lambda 参数:返回值 ----〉 案例:f=lambda n:n*n 例子01: ...
- 一款多功能的移动端滚动选择器,支持单选到多选、支持多级级联、提供自定义回调函数、提供update函数二次渲染、重定位函数、兼容pc端拖拽等等..
https://github.com/onlyhom/mobileSelect.js/blob/master/docs/README-CN.md mobileSelect.js 一款多功能的移动端滚动 ...
- C#中的函数(二) 有参有返回值的函数
接上一篇 C#中的函数(-) 无参无返回值的函数 http://www.cnblogs.com/fzxiaoyi/p/8502613.html 这次研究下C#中的函数(二) 有参有返回值的函数 依然写 ...
- python函数知识六 内置函数二、匿名函数与内置函数三(重要)
19.内置函数二 abs():绝对值 lst = [1,2,-3,1,2,-5] print([abs(i) for i in lst]) enumerate("可迭代对象",&q ...
- Perl字符串处理函数用法集锦
Perl字符串处理函数 0.函数名 index 调用语法position=index(string,substring,position); 解说返回子串substring在字符串string中的位置 ...
- perl中sprintf函数的用法
对于某些字符串,需要输入为特定的格式,通过sprintf可以很方便的完成,不需要专门进行其他处理. 转载 perl中sprintf函数的使用方法.
随机推荐
- MySql循环插入数据(定义了存储过程)
MySQL一窍不通啊,今天工作上需要用到,请教了别人,做以备忘 DROP PROCEDURE test_insert ; DELIMITER ;; CREATE PROCEDURE test_inse ...
- codeforces Diagrams & Tableaux1 (状压DP)
http://codeforces.com/gym/100405 D题 题在pdf里 codeforces.com/gym/100405/attachments/download/2331/20132 ...
- C#委托全解析
什么是委托? 委托类似于C语 ...
- EasyUI datagrid优化
easyui datagrid 在IE上加载速度慢, 150行数据就无法忍受了. firefox加载速度还可以. jquery easyui datagrid使用参考 http://www.cnblo ...
- Ruby类的继承
Ruby继承的语法 class DerivedClass < BaseClass #some stuff end < 为继承符号 重写(override) 的概念 有时, 我们希望子类从父 ...
- jquery选择器(二)-层次选择器
1. 后代选择器 2. 子元素选择器 3. 相邻兄弟元素选择器 4. 一般兄弟元素选择器(同辈元素选择器) 5. 补充(除自身以外的前后同辈选择器)
- php的Excel相关操作
1.需求 把数据库的数据输出excel格式 2.解决方案 利用phpexcel中的examples的01和07,对excel文件的读写 3.操作流程 a.https://github.com/PHPO ...
- 剑指Offer 二维数组中的查找
题目描述 在一个二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序.请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数. 思路法一: * 矩阵是 ...
- Mysql中索引的 创建,查看,删除,修改
创建索引 MySQL创建索引的语法如下: ? 1 2 3 CREATE [UNIQUE|FULLTEXT|SPATIAL] INDEX index_name [USING index_type] ON ...
- JVM(java 虚拟机)内存设置
一.设置JVM内存设置 1. 设置JVM内存的参数有四个: -Xmx Java Heap最大值,默认值为物理内存的1/4,最佳设值应该视物理内存大小及计算机内其他内存开销而定: -Xms Ja ...