Javascript正则表达式匹配数组不能正常工作

时间:2014-04-25 10:30:23

标签: javascript jquery regex

我正在使用javascript match()函数,如下所示

var str = "100% Scored"; 
var reg = "/\b(10|sales|100%)\b/i"
var res = str.match(reg);

res没有得到100%'值。我试过很多方法改变正则表达式但没有成功。

3 个答案:

答案 0 :(得分:0)

使用/…/创建regular expression文字,如下所示:

var reg = /\b(10|sales|100%)\b/i;

但请注意,\b只会匹配'字'之间的位置。字符和%不是单词字符,因此与"100% Scored"

不匹配

尝试这种模式:

var str = "100% Scored"; 
var reg = /\b(10|sales|100%)(?!\w)/i;
var res = str.match(reg);
console.log(res);         // [ "100%", "100%" ]

答案 1 :(得分:0)

使用此模式取出X%或XX%或XXX%:

var str = "100% Scored"; 
var reg = "^[0-9]{1,3}%"
var res = str.match(reg);

答案 2 :(得分:0)

尝试以下正则表达式

var reg = /\b(10|sales|100%)(?!\w)/i;

Working Fiddle