Perl 小骆驼 7章笔记 正则表达式

使用简单的模式
$_="yabba dabba doo";
if (/abba/) {
#matched
}
所有在双引号中的转义字符在模式中均有效,比如可以用/coke\tsprite/来匹配

元字符:元字符前使用反斜线将使它变成普通字符
. 匹配单个字符
3\.14159匹配3.14159

.不能匹配 \n
*表示匹配前一项0次或多次
+表示匹配前一项1次或多次
?表示匹配前一项0次或1次
.*表示匹配任意字符任意次

()表示分组,比如/(fred)*/ fred重复0次或多次,可以匹配任何字符串
| 表示或者, /fred|barney|betty/将匹配出现fred or barney or betty的字符


[]字符类,匹配列中出现的任意单个字符
[^def]匹配这三个字符之外的任意单个字符
[^n\-z]匹配出了n, -, z之外的任意字符
简写:[0-9] 是 \d
[A-Za-z0-9_] 是\w
[\f\t\n\r ] 是\s,匹配空白:格式符,制表符,换行符,回车,空格。
[^\d]非数字,即\D
[^\w]非word,即\W
[^\s]非空白,即\S
[\d\D]匹配任何字符,包括\n

 

习题:

1.2.
#!/usr/bin/perl
foreach (<>) {
  if (/(f|F)red/) {
    print "$_\n";
  }
}


3.
foreach (<>) {
  if (/\./) {
    print "$_\n";
  }
}

4.

#!/usr/bin/perl
foreach (<>) {
  if (/^([^A-Z]*[A-Z][^A-Z]*)$/) {
    print "$_";
  }
}
 

 

 

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/11903161/viewspace-688766/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/11903161/viewspace-688766/

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值