groovy中的正则表达式操作符【groovy】


groovy中对于正则表达式的书写进行了简化,同时引入了新的操作符,使得正则表达式使用起来比较方便简单。

对于书写的改进:

比如

assert "\\d" == /\d/

也就是在groovy中/\d/本身也是字符串,我们可以简单地把/看成是字符串中的双引号,因此杠杠中间的内容是不需要进行转义的。

 

groovy中的正则表达式的核心部分依然采用的是JAVA中的类,Pattern、Matcher等,不过groovy为了简化正则的使用,引入了三个操作符:

查找(find)操作符:=~

匹配(match)操作符:==~

模式(pattern)操作符:~String

 我们用一个例子来说明上述操作符的用法。

 比如我们有一个字符串:

def s = "She sells sea shells at the sea shore of seychelles"

def matcher = s =~ /s.a/

assert finder instanceof java.util.regex.Matcher

也就是s =~ /s.a/ 的返回结果是Matcher类型。

而如果用

def isMatched = s ==~ /s.a/

上述的返回值是布尔类型,用于判断是否匹配上了。

 

对于

def pattern = ~/s.a/

上述返回的是Pattern类型。

 

因此,我们综述一下这三个操作符:

查找(find)操作符:=~     返回Matcher类型

匹配(match)操作符:==~   返回boolean类型

模式(pattern)操作符:~String    返回Pattern类型

 

具体Matcher类、Pattern类有哪些方法可以参考JAVA中的定义。

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM