Groovy学习系列--正则表达式
正则表达式是在文本中寻找子字符串的一种模式。
1、定义正则表达式
Groovy中正则表达式定义是通过 ~’正则表达式’ 定义的
def regex = ~’chese’
2、常用正则表达式
表达式 |
匹配意义 |
示例 |
^ |
行首。匹配的字符必须以指定字符串开头 |
|
|
行尾。与字符串的尾部或换行符之前的位置相匹配。不包括换行符本身 |
|
|
匹配除换行符以外的任意一个字符 |
|
|
字母和数字 |
|
|
非字母和数字。 |
|
|
|
|
|
非空字符 |
|
|
数字 |
|
|
|
|
|
指定字符范围 |
如: |
|
前面元素至少出现0次 |
|
|
前面元素至少出现1次 |
|
|
前面的元素出现m 次 |
|
|
前面的元素至少出现m 次 |
|
|
前面的元素出现至少m 次,至多n 次 |
|
|
选择,匹配其中的任何一个 |
(a|b)*指a或b出现任意次 |
|
正则表达式的群组化 |
(ab)* 指ab出现任意次 |
|
汉字 |
|
|
非汉字 |
|
3、运算符
1) 匹配操作符 (==~)
用于检查字符串是否匹配 返回true或false
如:
if( "abc" ==~ /abc/) { println 'true' } else{ println 'flase' } |
2) 查找操作符 (=~)
用于在字符串中查找匹配的子字符串
def string = "id=12345" def matcher = string =~ /id=/ def id = matcher.replaceAll('') println id //运行结果为:12345 |