Perl和Java的正则表达式能力有什么区别?

19

关于正则表达式术语,perl和java有哪些不同之处?

这个问题只涉及正则表达式,特别是排除了两种语言中使用正则表达式的方法/函数的差异和语法上的差异,例如java需要转义反斜杠等。

特别值得关注的是java在可变长回顾后面方面的部分/偶尔支持。


1
有点偏题,但这是ECMA(JS)正则表达式和Perl之间的粗略比较:https://dev59.com/zmfWa4cB1Zd3GeqPjbLk#12127503 - nhahtdh
3个回答

20

8
似乎已经十分完整了。我还要补充一点,就是Perl的正则表达式引擎比其他引擎在Unicode支持方面更好。事实上,Perl开发人员最近遇到了Unicode标准的缺陷,因为之前没有任何人能够像Perl一样深入研究。 (结果,该标准进行了更新!) - ikegami

1
Java.util.regex.Pattern API 中有一段名为“与 Perl 5 的比较”的段落。

请添加一个链接。我从搜索到的页面上得知,Perl正则表达式不具备半个十年前添加的某个功能。 - ikegami
@ikegami.. 可能你打开了Java 6或更早版本的链接。请搜索Java 7中的PAttern类。我已在我的答案中添加了链接。 - Rohit Jain
Pattern类的链接和与Perl的比较:https://docs.oracle.com/javase/7/docs/api/java/util/regex/Pattern.html#jcc - Jeryl Cook

1

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