js中使用正则表达式
正则表达式不但可以在后台使用,还可以在前台调用。使用正则表达式在前台进行数据的校验、提取、替换非常方便。在C#中使用正则表达式和js中的使用有点不同,下面先为大家讲解一下两者的不同,接着再为大家详细讲解一下正则表达式在js中的使用。
1.在js中正则表达式写在一对//中,是一个特定的类型,而C#中的正则表达式是一个字符串;
2. js中的三个函数是text()、exec()、replace(),C#中的三个函数是IsMatch()、Match()、Repalce();
上面两点是两者的主要不同之处,其他地方的使用几乎一样。
1、匹配
使用的主要函数是test()。js代码如下所示。
onload = function () { document.getElementById("btn").onclick = function () { var txt = document.getElementById("txtEmail").value; var reg = /^\w+@\w+(\.\w+)+$/; alert(reg.test(txt)); }; };2、提取
var reg = /\d+/g; // var str = "我要把数字12345提取出来"; // var dNum = reg.exec(str); // alert(dNum); // 提取组使用括号括起(string.match方法) // 多个匹配,如果有多个数字 // 1、在正则表达式后加一个g,表示全局 // 2、循环匹配,就循环提取,没执行一次就提取一次 // var strs = "2015年4月21日"; // alert(reg.exec(strs)); // alert(reg.exec(strs)); // alert(reg.exec(strs)); // alert(reg.exec(strs));3、替换
var str = "2015年4月10日"; // 在C#中引用前面匹配的内容使用$num // str = str.replace(/(\d+)年(\d+)月(\d+)日/, "$1-$2-$3"); // alert(str);
在上面正则表达式的编写过程中,有一点要特别注意:加上^ 、$开始结束标记表示完全匹配,如果不加则表示部分匹配。
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。