知识大全 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相关参考