知识大全 js正则表达式的使用详解

Posted

篇首语:谷要自长,人要自强。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 js正则表达式的使用详解相关的知识,希望对你有一定的参考价值。

本篇文章是对js中正则表达式的使用进行了详细的分析介绍 需要的朋友可以参考下  

  js中的正则表达式比起C#中的正则表达式要弱很多 但基本够用了 定义正则表达式 关于验证的三个这则表达式方法 正则表达式式的转义字符 定义正则表达式 在js中定义正则表达式很简单 有两种方式 一种是通过构造函数 一种是通过// 也就是两个斜杠 例如

复制代码 代码如下:   var   re =new RegExp("?(w =w &) w =w ");

   使用构造函数定义正则表达式 注意大小写 负责就会不起作用 由于构造函数的参数是一个字符串 也可以是两个斜杠的方式定义 遇到一些特殊字符就需要使用进行转义 通过双斜杠的方式定义同样的正则表达式

复制代码 代码如下: var   re =/?(w =w &) w =w /; 复制代码 代码如下: var re =new RegExp( /^?(w =w &) w =w /);

   可以和构造函数达到同样的效果 但仔细分析 发现 通过构造函数需要更多的转义字符 关于验证的三个正则表达式方法 使用正则表达式的主要有字符串的方法match 正则表达式的方法exec test 正则表达式方法test测试给定的字符串是否满足正则表达式 返回值是bool类型的 只有真和假 如果只是单纯的判断 不需要其他的处理 可以使用尤其是验证时

复制代码 代码如下:  function test()      var text="index aspx?test= &ww= &= "; //          var   re =/?(w =w &) w =w /;     //  var   re =new RegExp("?(w =w &) w =w ");         var result=  re test(text);      if(result)              alert("ok");        else            alert("err");                             

   正则表达式方法exec测试给定的字符串是否满足正则表达式 返回匹配到的字符串 如果没有匹配的则返回null 和test基本一致 如果需要获取匹配的各个子字符串 可以使用下标的方式 把上边的test的例子可以改写如下

复制代码 代码如下:  function test()     var text="index aspx?test= &ww= &= ";             var   re = /?(w =w &) w =w /;    //  var   re =new RegExp( "?(w =w &) w =w ");         var result=  re exec(text);        if(result)                 alert("ok");                            alert(result);  // 是?test= &ww= &= ww= &                 alert(result[ ]+" ");//是?test= &ww= &=      alert(result[ ]+" ");//是ww= &          else            alert("err");               

   match其实是字符串的方法 但参数确是一个正则表达式 把上边的例子改写后 如下

复制代码 代码如下:  function test()      var text="index aspx?test= &ww= "; //           var   re = /?(w =w &) w =w /;      //   var   re = "(w =w &) w =w "      var result= text match(re);        if(result)                                     alert(result);//?test= &ww= test= &                      alert(result[ ]+" ");//?test= &ww=         alert(result[ ]+" ");//test= &    else                     alert("err");                  

   其实字符串类还有多个函数可以传递正则表达式 split search replace等但这些方法已经不适合验证了

复制代码 代码如下:  function test()      var text="index aspx?test= &ww= "; //           var   re = /?(w =w &) w =w /;      //   var   re = "(w =w &) w =w "      var result= text split(re);                       alert(result);                   alert(result[ ]+" ");         alert(result[ ]+" ");          

   正则表达式式的转义字符 在正则表达式中会经常出现转义字符 例如问号?在正则表达式中有特殊的含义 如果需要匹配问号?就需要转义 使用转义字符反斜杠 如下两个都是匹配问号开头的一段字符串

复制代码 代码如下: cha138/Article/program/Java/JSP/201311/20279

相关参考