let regexp = "/^[0-9]*$/";
类似这样:这是一个字符串,里面装着正则表达式。
那如何判断一个字符串的内容是合法的正则表达式?
这个需求本身就是很爆炸啊。 用正则判断是不是正则。。。
我真的不会留个印看大佬们发挥
写个简单的:
开头匹配以 /开头 搭配开头符合^有或无。
结尾匹配以 结尾符号$有或无 搭配/ 再搭配igm结尾的自由组合。
(实在太长了我自己先忽略m的搭配。。。)
中间匹配 实在不会写任意字符
/^\/\^?.*(\$?[\/|\/g|\/gi|\/i|\/ig])$/.test("/^sdk332$/ig")
这个找出来还是连合不合法不判断不了的 优秀...
13 回答12.9k 阅读
7 回答2.1k 阅读
3 回答1.3k 阅读✓ 已解决
2 回答1.3k 阅读✓ 已解决
6 回答1.2k 阅读✓ 已解决
6 回答1.1k 阅读
3 回答1.3k 阅读✓ 已解决
正则判断是不是正则
或者 这样试试行不行
var isreg;
try{
isreg=eval(regexp) instanceof RegExp
}catch(e){
isreg=false
}