Java和Groovy的正则表达式引擎是一样的吗?

时间:2017-07-24 07:55:21

标签: java regex groovy

现在我正在基于Groovy中的正则表达式做一些代码。但是为了创建和测试我的正则表达式,我使用了引用Java正则表达式引擎和面向Java的http://www.regexplanet.com/advanced/java/index.html的书籍。

我有点害怕 - Groovy正则表达式引擎和Java一样吗?我知道他们非常接近。但他们有一些差异吗?如果你知道答案 - 你能否就这个问题给我一些参考?

3 个答案:

答案 0 :(得分:4)

来自the source of v2.0.0

  

模式运算符(〜)提供了一种创建java.util.regex.Pattern实例的简单方法。

我无法找到语法,其中文档保证这是整个Groovy中用于模式匹配的正则表达式引擎;但我发现它非常非常非常非常不太可能Groovy现在会在其实现中使用两个RE引擎,或者在将来切换RE引擎。

答案 1 :(得分:1)

“因为Groovy基于Java,所以你可以使用Java的正则表达式包和Groovy。只需将java.util.regex。*导入到Groovy源代码的顶部。任何使用正则表达式的Java代码都会自动工作在您的Groovy代码中。“ Source: regular-expressions.info

答案 2 :(得分:0)

这是一个与正则表达式匹配的常见示例以及find

assert ['abc'] == ['def', 'abc', '123'].findAll { it =~ /abc/ }

感谢Haki先生,您可以在here(包括上面的示例)中找到更多示例。