怎么判断一个字符串是不是正则表达式

2025-04-29 23:41:18
推荐回答(2个)
回答1:

解释这个问题可能有点复杂,说几点区别

1.字符串,以""或者''包含,而Perl格式正则则以//包含

2.typeof(s);如果返回object则有可能是正则,如果是string,肯定是字符串

3.将字符串转化为正则:
var s = "123";
var re = new RegExp(s);

document.write(typeof(s));
document.write(typeof(re));
document.write(re.test(s));

4.object instanceof RegExp//返回true
function aa(){
alert(typeof(arguments[0]));
alert(arguments[0] instanceof RegExp)
alert(typeof(arguments[1]));
alert(arguments[1] instanceof RegExp)
}
aa("123456789012",/123/);

回答2:

任何一个字符串都是正则表达式