最新文章专题视频专题问答1问答10问答100问答1000问答2000关键字专题1关键字专题50关键字专题500关键字专题1500TAG最新视频文章推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37视频文章20视频文章30视频文章40视频文章50视频文章60 视频文章70视频文章80视频文章90视频文章100视频文章120视频文章140 视频2关键字专题关键字专题tag2tag3文章专题文章专题2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章专题3
当前位置: 首页 - 科技 - 知识百科 - 正文

JavaScript正则表达式的应用

来源:动视网 责编:小采 时间:2020-11-27 20:11:16
文档

JavaScript正则表达式的应用

JavaScript正则表达式的应用:那么在我们上一篇文章中,我们介绍了JavaScript正则表达式的含义,既然我们对正则表达式有了一定的了解,接下来我们就是要学习JavaScript正则表达式的应用与使用,下面我带大家一起学习!一、定义正则表达式在js中定义正则表达式很简单,有两种方式,一种是通
推荐度:
导读JavaScript正则表达式的应用:那么在我们上一篇文章中,我们介绍了JavaScript正则表达式的含义,既然我们对正则表达式有了一定的了解,接下来我们就是要学习JavaScript正则表达式的应用与使用,下面我带大家一起学习!一、定义正则表达式在js中定义正则表达式很简单,有两种方式,一种是通


那么在我们上一篇文章中,我们介绍了JavaScript正则表达式的含义,既然我们对正则表达式有了一定的了解,接下来我们就是要学习JavaScript正则表达式的应用与使用,下面我带大家一起学习!

一、定义正则表达式

在js中定义正则表达式很简单,有两种方式,一种是通过构造函数,一种是通过//,也就是两个斜杠。
例如

 var re =new RegExp("\\?(\\w{1,}=\\w{1,}&){1,}\\w{1,}=\\w{1,}");

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

var re =/\?(\w{1,}=\w{1,}&){1,}\w{1,}=\w{1,}/;
var re =new RegExp( /^\?(\w{1,}=\w{1,}&){1,}\w{1,}=\w{1,}/);

可以和构造函数达到同样的效果,但仔细分析,发现,通过构造函数需要更多的转义字符\

二、关于验证的三个正则表达式方法
使用正则表达式的主要有字符串的方法match,正则表达式的方法exec,test
正则表达式方法test测试给定的字符串是否满足正则表达式,返回值是bool类型的,只有真和假,如果只是单纯的判断,不需要其他的处理,可以使用尤其是验证时。

 function test(){ 
 var text="index.aspx?test=1&ww=2&www=3"; // 
 var re =/\?(\w{1,}=\w{1,}&){1,}\w{1,}=\w{1,}/;
 // var re =new RegExp("\\?(\\w{1,}=\\w{1,}&){1,}\\w{1,}=\\w{1,}");
 var result= re.test(text);
 if(result)
 {
 alert("ok"); 
 }else
 {
 alert("err"); 
 } 

 }

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

 function test(){ 
 var text="index.aspx?test=1&ww=2&www=3";
 var re = /\?(\w{1,}=\w{1,}&){1,}\w{1,}=\w{1,}/;
 // var re =new RegExp( "\\?(\\w{1,}=\\w{1,}&){1,}\\w{1,}=\\w{1,}");
 var result= re.exec(text); 
 if(result)
 {
 alert("ok"); 
 alert(result); // 是?test=1&ww=2&www=3,ww=2& 
 alert(result[0]+",0");//是?test=1&ww=2&www=3
 alert(result[1]+",1");//是ww=2& 
 }else
 {
 alert("err"); 
 } 

 }

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

function test(){ 
 var text="index.aspx?test=1&ww=234"; //
 var re = /\?(\w{1,}=\w{1,}&){1,}\w{1,}=\w{1,}/;
 // var re2 = "(\\w{1,}=\\w{1,}&){1,}\\w{1,}=\\w{1,}"
 var result= text.match(re);
 if(result)
 {
 alert(result);//?test=1&ww=234,test=1& 
 alert(result[0]+",0");//?test=1&ww=234
 alert(result[1]+",1");//test=1&
 }else
 {
 alert("err"); 
 } 
 }

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

function test(){ 
 var text="index.aspx?test=1&ww=234"; //
 var re = /\?(\w{1,}=\w{1,}&){1,}\w{1,}=\w{1,}/;
 // var re2 = "(\\w{1,}=\\w{1,}&){1,}\\w{1,}=\\w{1,}"
 var result= text.split(re); 
 alert(result); 
 alert(result[0]+",0");
 alert(result[1]+",1"); 
 }

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

function test(){ 
 var text="?test=1&ww=2&www=3";
 var re = /^\?(\w{1,}=\w{1,}&){1,}\w{1,}=\w{1,}/;// \?表示配置问号?
 // var re =new RegExp( "^\\?(\\w{1,}=\\w{1,}&){1,}\\w{1,}=\\w{1,}");// \\?表示配置问号?
 var result= re.exec(text); 
 if(result)
 {
 alert("ok"); 
 alert(result); 
 alert(result[0]+",0");
 alert(result[1]+",1"); 
 }else
 {
 alert("err"); 
 } 

 }

总结

通过这两篇文章的学习,相信小伙伴们对JavaScript正则表达式有一定的认识,和自己的理解,那就感觉自己动手试一试吧,这样在工作中更好的运用!

相关推荐:

JavaScript中正则表达式的含义与使用

大家都认识的JavaScript正则表达式详解

教你如何使用JavaScript正则表达式

15个常用的javaScript正则表达式

文档

JavaScript正则表达式的应用

JavaScript正则表达式的应用:那么在我们上一篇文章中,我们介绍了JavaScript正则表达式的含义,既然我们对正则表达式有了一定的了解,接下来我们就是要学习JavaScript正则表达式的应用与使用,下面我带大家一起学习!一、定义正则表达式在js中定义正则表达式很简单,有两种方式,一种是通
推荐度:
标签: 使用 应用 js
  • 热门焦点

最新推荐

猜你喜欢

热门推荐

专题
Top