2012-09-30 46 views
2

我必须传递给RegExp的变量值并指向一个字边界。如果它包含一个变量值,我有一个要检查的字符串。 我不知道如何传递给正则表达式作为变量值和字边界属性。将字变量传递给RegExp

因此,像这样:

var sa="Sample"; 
var re=new RegExp(/\b/+sa); 
alert(re.test("Sample text")); 

我尝试了一些方法来解决问题,但仍无法做到这一点:(

回答

5

使用此:re = new RegExp("\\b" + sa)

正如@RobW提到,您可能需要跳过sa

请参阅:Is there a RegExp.escape function in Javascript?

+2

'eval'?曾听说过'RegExp'构造函数? –

+0

@RobW,好吧,我会检查它是否有使用'RegExp'的方法.. – Marcus

+0

除非它意图使输入也可以是正则表达式,否则不要忘记转义用户输入('sa')。 –