js正则匹配

来源:互联网 发布:网络感情最新骗术 编辑:程序博客网 时间:2024/04/28 15:12

在项目开发时,js正则匹配经常用到,以前都是查查守则,很少去记录,过一段时间再次用的时候又要去搜,多次重复很麻烦。所以我决定将记录下来,下次用得时候方便使用。js匹配规则:string.match(正则式);在js中很多都是string.的形式,比如你要截取字符串:string.substr(0,1),0代表从第几个字符开始,1表示截取的长度。string表示获取的字符。这里讲一下match、exec、test的区别,match 是 String 对象的一个方法,所以用法是string.match(正则式),

例:match

var str = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz";
var regexp = /[A-E]/gi;
var rs = str.match(regexp);
//rs= Array('A', 'B', 'C', 'D', 'E', 'a', 'b', 'c', 'd', 'e');

而test和exec都是正则对象的方法,用法跟match相反,正则式.[test/exec](string),test返回一个布尔值,匹配上返回true,没匹上则为false,如果你只需要匹配的布尔值,多用test,相反则用match或者exec。

例:test

var str = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz";
var regexp = /[A-E]/gi;
var rs = regexp.test(str);
// rs = true; boolean

例:exec

var str = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz";
var regexp = /[A-E]/gi;
var rs;
while ((rs = regexp.exec(str)) != null)
{
    document.write(rs);
    document.write(regexp.lastIndex);
    document.write("<br />");
}

OUTPUT
---------------------------------
A    1
B   2
C   3
D   4
E   5
a   27
b   28
c   29
d   30
e   31


0 0
原创粉丝点击