我在使用RegExp
对象时遇到了困难,想要动态创建一个表达式,并将其应用于一组元素。
这里是一个 jsFiddle,以下是代码:
<div id='selectors'><span>A-F</span><span>G-L</span><span>M-S</span><span>T-Z</span></div>
<a hreh=#>Astring</a>
<a hreh=#>Cstring</a>
<a hreh=#>Xstring</a>
<a hreh=#>Dstring</a>
<a hreh=#>Zstring</a>
$('div#selectors span').click(function(){
expression = "/^["+$(this).html()+"].*$/";
rx = RegExp(expression,'i');
console.log(rx,'expression');
$("a").each(function(){
if($(this).html().match(rx) !== null){
$(this).addClass('selected');
}
});
})
/
表示正则表达式字面量,但本身不是正则表达式的一部分,就像双引号"
表示字符串字面量,但本身不是字符串的一部分。 - Phrogz