- 1、本文档共9页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
正则表达式regular expression详述(一)
正则表达式是regular expression,看来英文比中文要好理解多了,就是检查表达式符
不符合规定!!正则表达式有一个功能十分强大而又十分复杂的对象RegExp,在JavaScript1.2 版本以
上提供。
下面我们看看有关正则表达式的介绍:
正则表达式对象用来规范一个规范的表达式(也就是表达式符不符合特定的要求,比如是不是Email
地址格式等),它具有用来检查给出的字符串是否符合规则的属性和方法。
除此之外,你用RegExp构造器建立的个别正则表达式对象的属性,就已经预先定义好了正则表达式
对象的静态属性,你可以随时使用它们。
核心对象:
在JavaScript 1.2, NES 3.0以上版本提供。
在JavaScript 1.3以后版本增加了toSource方法。
建立方法:
文字格式或RegExp构造器函数。
文字建立格式使用以下格式:
/pattern/flags即/模式/标记
构造器函数方法使用方法如下:
new RegExp(pattern[, flags])即new RegExp(模式[,标记])
参数:
pattern(模式)
表示正则表达式的文本
flags(标记)
如果指定此项,flags可以是下面值之一:
g: global match(全定匹配)
i: ignore case(忽略大小写)
gi: both global match and ignore case(匹配所有可能的值,也忽略大小写)
注意:文本格式中的参数不要使用引号标记,而构造器函数的参数则要使用引号标记。所以下面的
表达式建立同样的正则表达式:
/ab+c/i
new RegExp(ab+c, i)
描述:
当使用构造函数的时候,必须使用正常的字符串避开规则(在字符串中加入前导字符 )是必须的。
例如,下面的两条语句是等价的:
re = new RegExp(\w+)
re = /w+/
下面的提供了在正则表达式中能够使用的完整对特殊字符的一个完整的列表和描述。
表1.3:正则表达式中的特殊字符:
字符
意义:对于字符,通常表示按字面意义,指出接着的字符为特殊字符,不作解释。
例如:/b/匹配字符b,通过在b 前面加一个反斜杠,也就是/b/,则该字符变成特殊字符,表示
匹配一个单词的分界线。
或者:
对于几个字符,通常说明是特殊的,指出紧接着的字符不是特殊的,而应该按字面解释。
例如:*是一个特殊字符,匹配任意个字符(包括0个字符);例如:/a*/意味匹配0个或多个a。
为了匹配字面上的*,在a前面加一个反斜杠;例如:/a*/匹配a*。
字符^
意义:表示匹配的字符必须在最前边。
例如:/^A/不匹配an A,中的A,但匹配An A.中最前面的A。
字符$
意义:与^类似,匹配最末的字符。
例如:/t$/不匹配eater中的t,但匹配eat中的t。
字符*
意义:匹配*前面的字符0次或n次。
例如:/bo*/匹配A ghost booooed中的boooo或A bird warbled中的b,但不匹配A goat g
runted中的任何字符。
字符+
意义:匹配+号前面的字符1次或n次。等价于{1,}。
例如:/a+/匹配candy中的a和caaaaaaandy.中的所有a。
字符?
意义:匹配?前面的字符0次或1次。
例如:/e?le?/匹配angel中的el和angle.中的le。
字符.
意义:(小数点)匹配除换行符外的所有单个的字符。
例如:/.n/匹配nay, an apple is on the tree中的an和on,但不匹配nay。
字符(x)
意义:匹配x并记录匹配的值。
例如:/(foo)/匹配和记录foo bar.中的foo。匹配子串能被结果数组中的素[1], ..., [n] 返
回,或被RegExp对象的属性$1, ..., $9返回。
字符x|y
意义:匹配x或者y。
例如:/green|red/匹配green apple中的green和red apple.中的red。
字符
文档评论(0)