用户名: 密码: 免费注册 忘记密码? 网站地图 | 加入收藏 | 设为首页
首页 | 新闻 | 工具 | 系统 | 办公 | 聊天 | 多媒体 | 网页 | 运营 | 平面 | 欣赏 | 数据库 | 程序 | 服务器 | 组网
网页 | 3dmax | Ghost | Windows Xp| Dreamweaver | photoshop | Flash | office | Alexa | Css | QQ | Asp | PHP | Jsp | Access
Flash MX 2004入门 | 网站推广策略 | CorelDRAW入门 | ASP学习 | 网站建设大师功 | Word入门
  iTbulo.com > 学院 > 程序开发教程 > Perl应用教程 > PERL基础教程 > 文章正文
Perl语言的精华--模式匹配
iTbulo.COM 2006-4-26 佚名()

常规表达式(Regular Expression)也译作正则表达式或文字处理模式,是指定模式的一种方法,这种模式对文本进行筛选,只匹配特定的字符串。一旦匹配到了一个字符串,就可以从大量的文本中将其抽取出来,或者利用另一个字符串来替代这个字符串。

常规表达式也是初学Perl者的难点所在,但一旦掌握其语法,它们就拥有几乎无限的模式匹配能力,而且Perl编程的大部分工作都是掌握常规表达式。

一 常规表达式中,/pattern/常用到的语法

/pattern/ 结果

 除了换行字符\n外,找寻只有一个字符的字符串

x? 找寻0个或是1个x字符

x* 找寻0个或是0个以上的x字符

.* 找寻0个或是0个以上的任何字符

x+ 找寻0个或是1个以上的x字符

.+ 找寻1个或是1个以上的任何字符

{m}  找寻刚好是m个个数指定的字符

{m,n} 找寻在m个数个数以上,n个个数以下指定的字符

{m,}  找寻m个个数以上指定的字符

〔〕  找寻符合〔〕内的字符

〔^〕  找寻不符合〔〕内的字符

〔0-9〕 找寻符合0到9的任何一个字符

〔a-z〕 找寻符合a到z的任何一个字符

〔^0-9〕 找寻不符合0到9的任何一个字符

〔^a-z〕 找寻不符合a到z的任何一个字符

^ 找寻字符开头的字符

$ 找寻字符结尾的字符

\d 找寻一个digit(数字)的字符,和〔0-9〕语法一样

\d+ 找寻一个digit(数字)以上的字符串,和〔0-9〕+语法一样

\D 找寻一个non-digit(非数字)的字符,和〔^0-9〕语法一样

\D+ 找寻一个non-digit(非数字)以上的字符,和〔^0-9〕+语法一样

\w 找寻一个英文字母或是数值的字符,和〔a-zA-Z0-9〕语法一样

\w+ 找寻一个以上英文字母或是数值的字符,和〔a-zA-Z0-9〕+语法一样

\W 找寻一个非英文字母,数值的字符,和〔^a-zA-Z0-9〕语法一样

\W+ 找寻一个以上非英文字母,数值的字符,和〔^a-zA-Z0-9〕+语法一样

\s 找寻一个空白的字符,和〔\n\t\r\f〕一样

\s+ 找寻一个以上空白的字符,和〔\n\t\r\f〕+一样

\S 找寻一个非空白的字符,和〔^\n\t\r\f〕一样

\S+ 找寻一个以上非空白的字符,和〔^\n\t\r\f〕+一样

\b 找寻一个不以英文字母,数值为边界的字符串

\B 找寻一个以英文字母,数值为边界的字符串

a|b|c 找到符合a字符或是b字符或是c字符的字符串

abc 找到一个含有abc的字符串

(pattern)  ()这个符号是会记忆所找寻到的字符,是一个很实用的语法

第一个()内所找到的字符串变成$1这个变量或是\1变量

第二个()内所找到的字符串变成$2这个变量或是\2变量

以此类推,笔者会在下一小节中详细介绍它的用法

/pattern/i i这个参数是代表忽略英文大小写的意思,也就是在找寻字符 串的时候,不会去考虑英文的大小写

\ 如果要在pattern模式中找寻一个有特殊的意义的字符,要在 这个字符前加上\这个符号,这样才会让这个特殊字符失效。

[1] [2] 下一页

文章搜索
相关资讯
相关文章 相关下载
优化你的 Perl 代码
Perl小技巧:文件操作
windows下Perl开发环境的安装和配置
mod_perl 编程的简单介绍
perl的建树算法
焦点信息