当前位置: 动力学知识库 > 问答 > 编程问答 >

Javascript regular expression - string to RegEx object

问题描述:

I am sure its something pretty small that I am missing but I haven't been able to figure it out.

I have a JavaScript variable with the regex pattern in it but I cant seem to be able to make it work with the RegEx class

the following always evaluates to false:

var value = "[email protected]";

var pattern = "^\[email protected][a-zA-Z_]+?\.[a-zA-Z]{2,3}$"

var re = new RegExp(pattern);

re.test(value);

but if I change it into a proper regex expression (by removing the quotes and adding the / at the start and end of the pattern), it starts working:

var value = "[email protected]";

var pattern = /^\[email protected][a-zA-Z_]+?\.[a-zA-Z]{2,3}$/

var re = new RegExp(pattern);

re.test(value);

since I always get the pattern as a string in a variable, I haven't been able to figure out what I am missing here.

网友答案:

Backslashes are special characters in strings that need to be escaped with another backslash:

var value = "[email protected]";
var pattern = "^\\[email protected][a-zA-Z_]+?\\.[a-zA-Z]{2,3}$"
var re = new RegExp(pattern);
re.test(value);
分享给朋友:
您可能感兴趣的文章:
随机阅读: