^一行的开头 $一行的结尾 例如/^$/匹配空行。
用\转义特殊字符。
//i,后面跟个i不区分大小写。
//g,后面跟个g匹配全部。没有g只匹配一次。
s///,前面跟个s做替换。
grep对列表中的元素逐一进行模式匹配操作。

练习(f81.pl):

  1. #!/usr/bin/perl -w
  2. $pat=<STDIN>;
  3. chomp $pat;
  4. $a="The phrase that pays";
  5. if ($a=~/$pat/i){
  6. print "\$_ contains the pattern $pat \n";
  7. }
  8. $a=~s/phrase/$pat/;
  9. print qq($a\n);
  10. @a_m=grep /A/i,("1 aaa","2 hello world!","3 abc","4 a b c");
  11. print qq(@a_m\n);
  12. @bb=("1a","bb a","aaa board");
  13. @a_m=grep s/A/X/ig,@bb;
  14. print qq(\@a_m=@a_m\n);
  15. print qq(\@bb=@bb\n);

$ perl f81.pl
www
The www that pays
1 aaa 3 abc 4 a b c
@a_m=1X bb X XXX boXrd
@bb=1X bb X XXX boXrd

正则表达式不好记忆,理解起来也挺费脑子,这就决定了贡献正则表达式代码只能是少数人。在具体实践中,去搜索别人已经写好的正则表达式,拿过来测一测,改一改自己用是比较好的方式。自己有好的正则表达式代码也不妨贡献出来。如果是自己写正则表达式,建议简单用用就好。另外就是如果正则表达式比较复杂,最好有注释,别让后面维护代码的人骂你。

这个页面上介绍了几个不错的正则表达式工具(我个人比较欣赏RegexBuddy):
http://apps.hi.baidu.com/share/detail/20369196

下面这本书是公认的好书:
精通正则表达式(第3版)中文版.(美)Jeffrey.E.F.Friedl
英文书名叫:Mastering Regular Expressions

关于正则表达式,就学习到这里吧。

转载于:https://blog.51cto.com/idata/806868

perl学习笔记(8)相关推荐

  1. perl学习笔记(9)

    我的环境是RHEL5.4,操作系统自带的perl版本是5.8.8.这次打算学习一下如何升级perl到最新版本(升级到其他版本应该是类似的). 到这个页面下载最新版本: http://www.perl. ...

  2. perl学习笔记(1)

    最近想通过51cto和大家分享围绕数据处理分析这一领域的技术经验,正好3月份要完成一项工作任务,主要内容就是修改有关作业调度的perl程序.我用过的语言很多,但是没用过perl,就从这里开始吧. 查看 ...

  3. perl 中单引号双引号的区别-----perl学习笔记

    在perl中给字符串加引号有两种: 1) 单引号: e.g. print 'I MISS YOU " SO MUCH" '; 它将单引号中的内容包括双引号完整输出,同时即使引号中包 ...

  4. Learning Perl学习笔记(1)第二章Scalar Data

    If Control Structure(IF循环) 脚本如下: #!/usr/bin/perl use warnings; use strict; use v5.24; my $line = < ...

  5. Perl学习笔记(十)--通过DBI访问数据库

    Perl访问数据库最常用的包是DBI,可以在www.cpan.org找到.使用ppm命令即可图形化安装.另外还需要安装对应数据库的驱动包,例如DBD::MySQL.DBD::Oracle.DBD::S ...

  6. Perl学习笔记(2)

    在本章中将要学习:(1)如何获得目录列表 (2)如何创建和删除文件 (3)如何创建和删除目录 (4)如何获取关于文件的信息. 一.获得目录列表 目录句柄与文件句柄的不同之处是:文件是通过读取文件句柄获 ...

  7. perl学习笔记——目录操作

    在目录书中移动 chdir 操作副改变当前的工作目录.它和shell中cd命令类似: chdir '/etc' or die "cannot chdir to /etc:$1"; ...

  8. Perl学习笔记(六)--文件(一)

    一.文件描述符: 访问文件时用来代表文件的数字. 它是系统资源,系统限制打开的文件描述符数量. Perl中只在某些系统调用时才使用它 文件句柄: 功能同文件描述符,但是与文件描述符不是一个东西. Pe ...

  9. 从零学习perl语言--perl学习笔记(2)--初识变量,if,while等函数的使用

    标量是什么? 标量是:数字(如256.2.15e20)和字符串(各种字符任意组合.如!"@#¥%").----标量是perl里面最简单的数据类型. 什么是浮点数? 带有小数点的数字 ...

最新文章

  1. windows下部署redis
  2. 从语言模型到Seq2Seq:Transformer如戏,全靠Mask
  3. QT的QHttpMultiPart类的使用
  4. View 绘制流程分析
  5. ebs r12多少钱 实施oracle_甘肃室外儿童游乐设施报价,室外儿童游乐设施多少钱
  6. 5G的场景、需求、通信速率
  7. 计算机excel知识点一级,2012年计算机一级考试高分必看知识点:EXCEL
  8. java sqlite 工具类_Java 工具类 - JDBC通用操作基类 BaseDao
  9. php计算两个日期之间的小时数,PHP_php 计算两个时间戳相隔的时间的函数(小时),这个是可以具体到小时的php代 - phpStudy...
  10. selenium中js定位_Selenium中的定位剂
  11. java 获取bean 属性_获取javaBean的属性名属性值属性类型
  12. MySQL备份与恢复详解(热备、冷备等相关术语解释)
  13. IDL编程实现拟合树的圆心代码
  14. springboot实现短信验证码登录注册
  15. 对于div背景颜色的透明
  16. mybatis_mysql使用 学习笔记
  17. 拼多多2020校招部分编程题
  18. 如何理解return paddle.reader.xmap_readers(train_mapper,reader,cpu_count(),102400)?
  19. PyTorch模型保存与加载
  20. MDC300平台介绍

热门文章

  1. sql 存储过程 盲注入_一次非常规 SQL 注入(informixsql)的利用过程
  2. 计算机语言2进制怎么计算,计算机语言二进制…八进制、十进制…怎样推算?数制是怎么读?...
  3. oracle 关闭数据库实列,Oracle 11g 数据库启动和关闭
  4. python3获取网页内容_python3获取一个网页特定内容
  5. 基本数据类型的成员变量放在jvm的哪块内存区域里?
  6. B端可视化: 图表设计(2)
  7. 为什么很多企业都喜欢鹅厂出来的产品经理?
  8. 2020中国移动阅读行业报告
  9. 用友元函数重载乘法,用成员函数重载除法
  10. php调用.net webservice,PHP调用.NET的WebService 简单实例