本文介绍了如何检查输入字符串是否为有效的正则表达式?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
如何在JavaScript中检查字符串是否是可以编译的正确正则表达式?
How do you check, in JavaScript, if a string is a proper regular expression that will compile?
例如,当您执行以下javascript时,会产生错误.
For example, when you execute the following javascript, it produces an error.
var regex = new RegExp('abc ([a-z]+) ([a-z]+))');
// produces:
// Uncaught SyntaxError: Invalid regular expression: /abc ([a-z]+) ([a-z]+))/: Unmatched ')'
如何确定字符串是否为有效的正则表达式?
How does one determine if a string will be a valid regex or not?
推荐答案
您可以使用 try/catch
和 RegExp
构造函数:
You can use try/catch
and the RegExp
constructor:
var isValid = true;
try {
new RegExp("the_regex_to_test_goes_here");
} catch(e) {
isValid = false;
}
if(!isValid) alert("Invalid regular expression");
这篇关于如何检查输入字符串是否为有效的正则表达式?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!