<script>
re = /^.+\s+(.+)\s+(\d+)$/;
str1 = "aa 100";
str2 = "aa aa1 100";
str3 = "aa aa1 aa2 100";
arr = str3.match(re);
alert(RegExp.$1+"\n"+RegExp.$2);</script>
re = /^.+\s+(.+)\s+(\d+)$/;
str1 = "aa 100";
str2 = "aa aa1 100";
str3 = "aa aa1 aa2 100";
arr = str3.match(re);
alert(RegExp.$1+"\n"+RegExp.$2);</script>
<script>
re = /^(.+\s+)*(.+)\s+(\d+)$/;
str1 = "aa 100";
str2 = "aa aa1 100";
str3 = "aa aa1 aa2 100";
arr = str2.match(re);
alert(RegExp.$2+"\n"+RegExp.$3);</script>
由于前面的aa aa1数目不确定,所以将其使用一个子匹配
也就是只能使用RegExp.$2和RegExp.$3来取得你想要的
re = /(\S+)\s+(\d+)$/i;
str1 = "aa 100";
str2 = "aa aa1 100";
str3 = "aa aa1 aa2 100";
arr = re.exec(str1);
document.write("<br>str1 = "+str1);
document.write("<br>$1 = "+RegExp.$1+"<br>$2 ="+RegExp.$2);
arr = re.exec(str2);
document.write("<br>str2 = "+str2);
document.write("<br>$1 = "+RegExp.$1+"<br>$2 ="+RegExp.$2);
arr = re.exec(str3);
document.write("<br>str3 = "+str3);
document.write("<br>$1 = "+RegExp.$1+"<br>$2 ="+RegExp.$2);
</script>
str1 = "aa 100 aa aa1 100 aa aa1 aa2 100";
re = /(\S+)\s+(\d+)$/;
while(re.exec(str1)){
document.write("<br>$1 = "+RegExp.$1+"<br>$2 ="+RegExp.$2);
}请问能否连续取得
aa,100
aa1,100
aa2,100
呢?
str1 = "aa 100 aa aa1 100 aa aa1 aa2 100";
re = /(\S+)\s+(\d+)/g;
while(re.exec(str1)){
document.write(RegExp.$1+","+RegExp.$2,"<br>");
}
</script>