javascript之正则表达式

 

元字符

  

^       $       .        *       +       ?       =       !        :        |       \        /        ( )      [ ]      { }

 

在使用这些符号时需要用“\”来进行转移。

 

如果记不清楚那些标点符号需要转移,可以在使用标点符号时都使用反斜杠“\

 

简单匹配

 

1、直接量                /javascript/      匹配带有“javascript”的字符串 比如“javascript is an object-oriented scripting language”

2、[ ]                      /[abc]/            匹配字符“a”或“b”或“c”

3、[^]                    /[^abc]/          匹配除了a、b、c之外的任意字符

4、                       /./                   任意字符

5、\w                     /\w/                 任意ASCII单字符,等价于[a-zA-Z0-9]

6、\s                      /\s/                 空白符

7、\d                      /\d/                 数字,等价于[0-9]

 

重复

 

1{n,m}                    /[a]{3,5}/           重复次数至少n次最多m次,比如“aaa”或“aaaa”或“aaaaa”

2{n,}                        /[a]{3,}/             重复次数至少n次,比如“aaa”或“aaaaa”或“aaaaaa”……

3{n}                         /[a]/{3}               刚好匹配n次,比如只能匹配“aaa”

4、                            /[a]?/                 0次或1次

5、+                            /[a]+/                 1次或多次

6、                           /[a]*/                 0次或多次

 

选择、分组

 

1、|                              /a|b/                  选择,匹配“a”或“b”

2、()                            /(abc)+/             分组,匹配“abc”或“abcabc”……

 

位置

 

1、^                            /^a/                    以“a”开始,比如“ab”或“abc”……

2、$                            /b$/                    以“b”结束,比如“ab”或“cb”……  

 

标志

 

1、                            /a/i                     不区分大小写,比如“a”或“A”

2、g                                     /b/g                    全局匹配、找到所有的匹配

 

方法

 

1、  var ret =  “javascript”.search(/script/i)           返回第一次匹配子串开始字符的位置,没有匹配返回-1

2、  var ret =  “javascript”.replace(/java/gi,””)     讲匹配的子串替换成函数的第二个参数;

3、  var ret =  “javascript”.match(/(java)(script)/gi)      返回一个数组

      ret[0]                   完整的匹配“javascript”

      ret[1]                   第一个括号匹配的子串“java”

      ret[2]                   第二个括号匹配的子串“script”

      ……          

4、  var ret =  “javascript”.split(/a/)     用参数匹配的子串作为分隔符分解字符串 返回数组

 

 

posted on 2010-04-18 23:23  唯C  阅读(372)  评论(0)    收藏  举报

导航