標籤:
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); // var result= re.test(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");
}
}
使用Regex的主要有字串的方法match,Regex的方法exec,test
Regex方法test測試給定的字串是否滿足Regex,傳回值是bool類型的,只有真和假,如果只是單純的判斷,不需要其他的處理,可以使用尤其是驗證時。
Regex方法exec測試給定的字串是否滿足Regex,返回匹配到的字串,如果沒有匹配的則返回null,和test基本一致
其中 \w{1,}的意思 /w匹配A-Z a-z 0-9 {1,}匹配1次以上
舉例:
(\w)\1{4,}和(\w){4,}\1和(\w)\1{4,}\1 在匹配 "aa bbbb abcdefg ccccc 111121111 999999999" 時的困惑
(\w)\1{4,}匹配 ccccc 999999999 先匹配(\w ) \1反向引用第一個括弧裡面匹配的 {4,}對反向引用的重複四次以上
(\w){4,}\1匹配 ccccc 111121111 999999999 匹配(\w)4次以上 然後再 反向引用第一個
(\w)\1{4,}\1匹配 999999999 先匹配\w 引用第一個並重複四次以上 再反向取第一個
js中Regex 書寫方法