我需要将Java正则表达式转换为Actionscript正则表达式。
显然没有任何预制转换器,所以我试图自己写一个。是否有任何资源列出所有差异?
我知道regular-expressions.info,但似乎并没有全面的差异列表。
由于
答案 0 :(得分:7)
我不知道任何现有的转换器,但如果您的目标是专门的ActionScript而不仅仅是任何ECMA-262实现,那么该作业可能比您预期的更容易。 AS3由PCRE提供支持,与PHP的preg_
函数相同,因此它支持lookbehind,原子组和占有量词,与Java相同。除了JS的 ignore-case 和 multiline 之外,它还支持Java的 dotall 和扩展模式。它也支持内联修饰符语法((?imsx)
)。
PCRE的Unicode支持比Java更好,但遗憾的是,我不认为它包含在ActionScript中。 Unicode功能似乎与字符编码明确相关,即PCRE中的UTF-8;我相信ActionScript根据ECMA-262使用UTF-16。无论如何,它的Unicode支持似乎很小,与JavaScript相同。
答案 1 :(得分:1)
以下是细分:
java.util.regex RegExp.prototype Character class set operations (?#…) comment patterns Named capture The /y (sticky) modifier The /x (extended) modifier \u10000+ Codepoints Possessive quantifiers Quotation Exception Handling Linebreak matcher
<强>参考强>
答案 2 :(得分:0)