我需要将 Java 正则表达式转换为 Actionscript 正则表达式。
显然没有任何预制转换器,所以我正在尝试自己编写一个。是否有任何资源可以列出所有差异?
我知道 regular-expressions.info,但那里似乎没有完整的差异列表。
谢谢
最佳答案
我不知道任何现有的转换器,但如果您的目标具体是 ActionScript 而不仅仅是任何 ECMA-262 实现,那么这项工作可能比您预期的要容易。 AS3 由 PCRE 提供支持,和PHP的preg_
函数一样,所以和Java一样支持lookbehind、atomic groups和possessive quantifiers。除了 JS 的 ignore-case 和 multiline 之外,它还支持 Java 的 dotall 和 extended 模式。它还支持内联修饰符语法 ((?imsx)
)。
PCRE 的 Unicode 支持比 Java 好,但不幸的是,我认为 ActionScript 中没有包含这一点。 Unicode 功能似乎与字符编码明确相关,即 PCRE 中的 UTF-8;我相信 ActionScript 根据 ECMA-262 使用 UTF-16。不管怎样,它的 Unicode 支持似乎很少,与 JavaScript 一样。
关于java - Java正则表达式与ECMA-262(AS、JS)的区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6439625/