javascript--正则表达式--更新中

时间:2022-06-23 04:22:00

引用地址:http://www.iteye.com/topic/481228 和http://www.cnblogs.com/rubylouvre/archive/2010/03/09/1681222.html

一.创建方法

1. var  te = new RegExp("匹配的内容",“匹配模式”);

2. var te = /匹配的内容/匹配的模式;

二.匹配的内容

1.预定义字符类:

字符 正则 描述
\t /\t/ 制表符
\n /\n/ 制表符
\r /\r/ 回车符
\f /\f/ 换页符
\a /\a/ alert字符
\e /\e/ escape字符
\cX /\cX/ 与X相对应的控制字符
\b /\b/ 与回退字符
\v /\v/ 垂直制表符
\0 /\0/ 空字符

2.预定义类

字符 等同于 描述
. [^\n\r] 除了换行和回车之外的任意字符
\d [0-9] 数字字符
\D [^0-9] 非数字字符
\s [ \t\n\x0B\f\r] 空白字符
\S [^ \t\n\x0B\f\r] 非空白字符
\w [a-zA-Z_0-9] 单词字符(所有的字母)
\W [^a-zA-Z_0-9] 非单词字符
[...]   方括号内的任意字符
[^....]   不在方括号内的任意字符

3.量词

代码 类型 描述
? 软性量词 出现零次或一次
* 软性量词 出现零次或多次(任意次)
+ 软性量词 出现一次或多次(至道一次)
{n} 硬性量词 对应零次或者n次
{n,m} 软性量词 至少出现n次但不超过m次
{n,} 软性量词 至少出现n次(+的升级版)

4.边界

边界
正则 名称 描述
^ 开头 注意不能紧跟于左中括号的后面
$ 结尾  
\b 单词边界 指[a-zA-Z_0-9]之外的字符
\B 非单词边界  

5.选择、分组、引用

属性 名称 描述
  | 竖线 分隔供选择的字符串,每个字符串都可匹配
(.....) 圆括号 第一种作用是将几个项组合成表达式后可以跟随次数,第二个作用定义子模式
(?:......) 问号分好  
/n    
     
     

三、匹配的模式(放在最后一个斜线的后边)

g (全文查找)

i (忽略大小写)

m (多行查找)

四、方法

1.test-检测查找的字符串中是否有这个匹配的,返回boolean-true或false----形式:模式.test(字符串)

window.onload = function  () {

        

        var aaa = 'abc2013abc2012def2011';



        var bbb = 'www.hao123.com.cn';



        var ta = RegExp("abc");



        alert(ta.test(aaa));  //输出true



   }

2.exec-返回匹配的字符串

window.onload = function  () {

        

      



        var ccc = 'WWW123@$#%#abc456@$#%@';



      

        var ta = /(\W+)+/g; //(\W+)是代表一串非字符,(\W+)+代表所有的非字符串



        alert(ta.exec(ccc));  //输出 @$#%#,@$#%#



   }

3.match-返回匹配的字符串

上例-->   alert(ccc.match(ta));  //输出 @$#%#,@$#%#