在actionscript中,如何使用RegExp类检查是否编译了给定的正则表达式

前端之家收集整理的这篇文章主要介绍了在actionscript中,如何使用RegExp类检查是否编译了给定的正则表达式前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我是动作脚本的新手,正在研究avm2 ..

我想知道的一件事是如何确定在RegExp类中是否编译了给定的正则表达式,它在内部使用pcre库作为正则表达式编译器.

例如,以下具有括号不匹配的正则表达式,它可能不在RegExp类的pcre中编译.

var r:RegExp = new RegExp("(a))");

我尝试使用如下所示的try-catch,没有发生任何异常.

try
{
    var r:RegExp = new RegExp("(a))");
} catch (e:Error) {
    trace('error');
}

我也试图在互联网上找到解决方案,似乎没有方法属性.

谢谢.

解决方法

根据 the documentation,正则表达式中的错误将抛出一个SyntaxError:

A SyntaxError exception is thrown when a parsing error occurs,for one of the following reasons:.

    • An invalid regular expression is parsed by the RegExp class.

    • Invalid XML content is parsed by the XML class.

作为Error的子类,您的代码应该已经捕获它,但它看起来已经破了in my testing.

猜你在找的正则表达式相关文章