正则表达式由NordriDesign提供房伟珍惜缘分共享资源正则表达式•什么是正则表达式•正则表达式的语法•在JavaScript中如何使用正则表达式珍惜缘分共享资源什么是正则表达式?•在编写处理字符串的程序或网页时,经常会有查找符合某些复杂规则的字符串的需要。•例如:我们在搜索或打开某种类型的文件时候,前面会加上*号!在系统里面,*号会解释为任意字符串!在windows里面,一般*可以理解为通配符!而正则表达式也是用来进行文本匹配的工具,只不过比起通配符它能更精确地描述你的需求当然,代价就是更复杂。珍惜缘分共享资源正则表达式定义•正则表达式——就是用某种模式去匹配一类字符串的一个公式。珍惜缘分共享资源正则表达式语法•元字符\b.*•例如\bhaha\b。(\b是正则表达式规定的一个特殊代码,代表着单词的开头或结尾,也就是单词的分界处。•假如你要找的是haha后面不远处跟着一个ggg,你应该用\bhaha\b.*\bggg\b。•.匹配除了换行符以外的任意字符。•*表示数量--它指定*前边的内容可以重复任意次以使整个表达式得到匹配。珍惜缘分共享资源正则表达式语法•连字符–•如果我们使用的字符串中间有相关关联的话,我们就要使用连字符。•例如:固定电话号码029-88888888•正则表达式语法:•0\b\b-\b\b\b\b\b\b\b\b•0\d{2}-\d{8}珍惜缘分共享资源正则表达式语法•常用的元字符名称说明.匹配除换行以外的任意字符\w匹配字母或数字或下划线或汉字\s匹配任意空白符\d匹配数字\b匹配单词的开始或结束^匹配字符串的开始$匹配字符串的结束珍惜缘分共享资源正则表达式语法•\ba\w*\b匹配以字母a开头的单词——先是某个单词开始处(\b),然后是字母a,然后是任意数量的字母或数字(\w*),最后是单词结束处(\b)•\d+匹配1个或更多连续的数字。这里的+是和*类似的元字符,不同的是*匹配重复任意次(可能是0次),而+则匹配重复1次或更多次珍惜缘分共享资源正则表达式语法•\b\w{6}\b•试着自己想想,匹配下自己的QQ号码?•\b{6,9}\b珍惜缘分共享资源正则表达式语法•常用限定符名称说明*重复0次或多次+重复一次或多次?重复0次或一次{n}重复n次{n,}重复n次或更多次{n,m}重复n次到m次珍惜缘分共享资源正则表达式语法•字符类•如果你想匹配没有预定义元字符的字符集比如元音字母(a,e,i,o,u),怎么办?•[aeiou](只需要在要查找的字母外面加上[])•例:查找标点符号.?!•[.?!](在查找的标点符号外面加上[])•注意:不需要写成[\.\?!]•表示26个小写,大写和10个数字:•[a-z0-9A-Z_]=\w珍惜缘分共享资源正则表达式语法•替换•0\d{2}-\d{8}|0\d{3}-\d{7}这个表达式能匹配两种以连字号分隔的电话号码:一种是三位区号,8位本地号(如010-12345678),一种是4位区号,7位本地号(0917-1234567)•Windows98|Windows2000|WindosXP这个例子表示替换不仅仅能用于两种规则,也能用于更多种规则。珍惜缘分共享资源在JavaScript中正则表达式•scripttype=text/javascript•vara=/叶琦/;•varb=“叶琦哈哈哈”;•varc=a.exec(b);•alert(c);•/script将会输出叶琦,因为正则表达式a会匹配b,如果有b中有a,则返回a。否则返回null珍惜缘分共享资源在JavaScript中正则表达式•scripttype=text/javascript•vara=/c{2}/;//表示连个连续的c•varb=“ggccgg”;•varc=a.exec(b);•alert(c);•/script将会返回结果cc,如果不匹配则返回null。珍惜缘分共享资源在JavaScript中正则表达式•Search()方法,返回正则表达式第一次匹配的值。•Text()方法:仅仅检查是否能够匹配正则,并且返回布尔值。感谢关注