在正则表达式世界中,Java使用的是什么味道和风味?

xde*_*000 12 java regex

我不是英语母语,所以我不太清楚'味道'的含义可能是它是指正则表达式语法?如果有的话有多少正则表达式语法?

BRE ERE Perl等.??

Tim*_*ker 12

正则表达式引擎实现的功能有多种不同的变体,它在"引擎盖下"使用了什么技术以及它用于某些功能的语法.

regular-expressions.info上有一篇非常好的文章和比较表.

Java regex包实现了一个"Perl-like"正则表达式引擎,但它有一些额外的功能,如所有权量词(.*+)和可变长度(但有限)的后向断言).另一方面,它错过了Perl的一些功能,即条件表达式或注释.总而言之,它是一个非常全功能的实现.


Ama*_*osh 8

  • Flavor指的是正则表达式引擎 - 特定正则表达式引擎支持的语法和附加属性.
  • Patternclass记录了java regex引擎的属性
  • 除了元字符的含义等基本内容之外,正则表达式引擎的不同实现支持不同类型的语法.例如
    • POSIX引擎支持[:digit:]数字(与...相同)[0-9]
    • Perl兼容引擎支持\d数字快捷方式.
    • JavaScript不支持外观
    • PHP和其他一些支持看后面,但需要它们固定长度
    • 文本编辑器的正则表达式引擎(Notepad ++)通常不支持环顾四周.