Java和ECMA-262(AS,JS)中正则表达式的区别

6

我需要将Java正则表达式转换为Actionscript正则表达式。

显然没有现成的转换器,所以我正在尝试自己编写一个。有没有什么资源可以列出所有的区别?

我知道regular-expressions.info,但那里似乎没有全面列出所有的区别。

谢谢!

3个回答

7
我不知道是否存在现成的转换器,但如果你的目标特别是ActionScript而不仅仅是任何ECMA-262实现,那么这项工作可能比你预期的要容易。AS3由PCRE支持,就像PHP的preg_函数一样,因此它支持回顾、原子组和占有量词,就像Java一样。除了JS的ignore-casemultiline之外,它还支持Java的dotallextended模式。它也支持内联修改器语法((?imsx))。
PCRE的Unicode支持比Java更好,但不幸的是,我认为ActionScript没有包含在内。Unicode功能似乎明确地与字符编码相关联,在PCRE中为UTF-8;我相信ActionScript使用UTF-16符合ECMA-262。无论如何,它的Unicode支持似乎很少,与JavaScript相同。


0

抱歉,我应该提到我已经尝试过 regular-expressions.info。我编辑了我的帖子以包含这一点。 - tsiki

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接