码迷,mamicode.com
首页 > 其他好文 > 详细

正则表达式

时间:2015-10-12 02:11:26      阅读:154      评论:0      收藏:0      [点我收藏+]

标签:表达式   字符串   

正则表达式中的元字符:

基本元字符集:^,$,.,*,[],[^],\<,\>

扩展元字符集:?,+,{,},|,(,) 


()标记一个子Reg表达式的开始和结束

[]标记任意一个字符

{}限定符,标记前一个字符重复次数

| 用在()中是字符串或,而不是字符或



\ 将元字符转为普通字符(如\[),或将普通字符变为转义字符(如\t)

^ 匹配字符串的开始位置,如果RegExp对象设置了多行模式,那么^还将匹配所有\n或\t之后的位置(首行)

$ 匹配字符串的位置结束,如果RegExp对象设置了多行模式,那么$还将匹配所有\n或\t之前的位置(行尾)

* 将该字符前面正则表达式中的紧邻字符(可以是转义字符)重复0次或多次(如“ab*”可以匹配“a”,"ab","abb..";"a\d*"可以匹配很多)

+ 将该字符前面正则表达式中的紧邻字符(可以是转义字符)重复1次或多次

? 将该字符前面正则表达式中的紧邻字符(可以是转义字符)重复0次或1次

{n} 将该字符前面正则表达式中的紧邻字符(可以是转义字符)重复n次

{n,} 将该字符前面正则表达式中的紧邻字符(可以是转义字符)重复至少n次

{n,m} 将该字符前面正则表达式中的紧邻字符(可以是转义字符)重复至少n次,最多m次

. 匹配\n之外的任何字符(如果匹配所有字符可以使用[.\n])

(pattern) 当一个正则表达式Reg中含()时,如果匹配了该Reg,那么将只返回与()匹配的部分。"industr(ies)"如果匹配了那么将只返回ies

(?:pattern) 当一个正则表达式Reg中含(?:)时,如果匹配了该Reg,那么将返回整个与Reg匹配的部分(这个常与|合用)如"industr(?:y|ies)"将匹


配"industry"或"industries"

(?=pattern) 当一个正则表达式Reg中含(?=)时,如果匹配了该Reg,那么将只返回()只外匹配的部分。如"windows (2000|NT)"如果匹配了将只返回"windows"

(?!pattern) 负向匹配,与(?=pattern)相反,匹配pattern不包含的字符,并且()的内容不返回。如"windows (2000|NT)" ,不能比配windows 2000"中的


windows但能匹配windows 3.1中的windows,并只返回windows

| Reg中的字符串或,常用在()中,如(abc|bcd)匹配abc或bcd

[xyz] 字符集,匹配[]包含的任意一个字符

[^xyz] 负向匹配,匹配[]不包含的任意一个字符

- 字符范围




\b 匹配一个单词边界,即单词与空格间的位置。如‘er\b‘能匹配‘never is‘中的‘er‘但不能匹配‘verb ‘中的‘er‘

\B 匹配一个非单词边界,与上述相反,能匹配‘verb ‘中的‘er‘,但不能匹配‘never is‘中的‘er‘

\cx 匹配一个由x指明的控制字符,如\cM将匹配回车

\d 配置一个数字字符,等价于[0-9]

\D 配置一个非数字字符,等价于[^0-9]

\f 匹配一个换页符

\n 匹配一个换行符

\r 匹配一个回车符

\t 匹配一个制表符

\v 匹配一个垂直制表符

\s 匹配任意一个空白字符,等价于[\f\n\r\t\v]

\S 匹配任意一个非空白字符,等价于[^\f\n\r\t\v]

\w 匹配数字字母或下划线,等价于[0-9a-zA-Z_]

\W 匹配非数字字母或下划线,等价于[^0-9a-zA-Z_]

\num            重复第num个()标记的reg表达式


本文出自 “tech记录” 博客,谢绝转载!

正则表达式

标签:表达式   字符串   

原文地址:http://a1liujin.blog.51cto.com/5519498/1701891

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!