多语言展示
当前在线:976今日阅读:91今日分享:37

JS中正则表达式基础知识总结

正则表达式是描述一个字符模式的对象。我们经常用正则表达式来检测字符串是不是我们想要的字符串,比如邮件的格式是否正确等待。今天我就对正则表达式的基础进行整理,为后面完成实际工作打下基础。
工具/原料

电脑

方法/步骤
1

正则表达式所有字母和数字都是按照字面上的含义进行匹配的(引号和@没有特使含义,直接按照字面意思匹配)。实例代码如下:function zmhypp() {            var text = "zimian1hanyi23zifu456pipei78";            var reg = new RegExp("yi2", "g");            alert(text.match(reg));        }

2

正则表达式中的转义字符:通过“\”作为前缀: \o          NUL字符(\u0000)\t            制表符(\u0009)\n            换行符(\u000A)\v            垂直制表符(\u000B)\f             换页符(\u000C)\r             回车符(\u000D)\xnn        由十六进制数nn指定的拉丁字符\uxxxx     由十六进制xxxx指定的Unicode字符\cX          控制字符^X实例:function zyzf() {            var text = "zy\t\rzf";            var reg = new RegExp("\\r", "g");            alert(reg.test(text));         }

3

正则表达式中特殊标点符号:^ $  . * + ?= ! : | \ / ( ) [ ] { }(如果要在正则表达式使用这些直接量则要在前面加“\”)[^]:否定字符类,不包括在后面的匹配。function tsbds()        {            var text = "tieshubiaodianpipei";            var reg = new RegExp("^ti", "g");            alert(reg.exec(text));        }$:以什么的结尾。. :除了换行符和unicode行终止符之外的所有字符。[]:方括号里面的任意字符匹配。例如:var reg=new RegExp("[abc]","g");的含义和“a”“b”“c”中的任何一个匹配。

4

正则表达式中的字符类\w :任何ASCII字符组成的字母数字,等级于[a-zA-Z0-9]\W:任何不是ASCII字符组成的字母数字,等级于[^a-zA-Z0-9]\s :任何Unicode的空白字符\S: 任何非Unicode的空白字符\d: 任何ASCII数字,等价于[0-9]\D:出ASCII数字之外的任何字符,等价于[^0-9][\b]:退格直接量(特例)实例:寻找字符串中的所以数字function tsbds()        {            var text = "ties2hubi3aodia2424npip242ei";            var reg = new RegExp("\\d", "g");            alert(text.match(reg));        }

5

正则表达式中重复用法:{n,m}     匹配前一项至少n次,但是不超过m次{n,}        匹配前一项n次或者更多次{n}         匹配前一项n次?          匹配前一项0次或者1次,等价于{0,1}+           匹配前一项一次或者多次,等价于{1,}*            匹配前一项0次或者多次,等价于{0,}实例:找出数字组合function tsbds()        {            var text = "ties2hubi3aodia2424npip242ei";            var reg = new RegExp("\\d+", "g");            alert(text.match(reg));        }

6

正则表达式匹配之非贪婪的匹配,只需要在待匹配的字符后面跟一个问号即可。如我们看看/a+?/的匹配结果吧。function tsbds()        {            var text = "tieaaaas2hubi3aodia2424npip242ei";            var reg = new RegExp("a+?", "g");            alert(text.match(reg));        }

7

正则表达式之分组、选择和引用|  分割供选择的字符,如/ab|cd|ef/可以匹配“ab”或“cd”或者“ef”(从左到右的匹配,左边匹配了就忽略右边的如/a|ab/遇到ab职匹配第一个)()  将几个项组合成一个单元。例如:function tsbds()        {            var text = "tiABCeaaaaSs2hubAi3aDodAia2424npBip24C2ei";            var reg = new RegExp("ab|bc|de", "gi");            alert(text.match(reg));        }

8

正则表达式的修饰符i   :执行不区分大小写的匹配g  :找到所有的匹配m :多行匹配模式实例匹配所有的全局配置字母abc(不区分大小写)function tsbds()        {            var text = "tiABCeaaaaSs2hubAi3aDodAia2424npBip24C2ei";            var reg = new RegExp("[abc]", "gi");            alert(text.match(reg));        }

注意事项

正则表达式设计要细心哦

推荐信息