正则表达式是在文本中寻找子字符串的一种模式。
- 定义正则表达式
Groovy中正则表达式定义是通过
~'正则表达式'
定义的
def regex =~'chese'
- 常用正则表达式
表达式 | 匹配意义 | 示例 |
---|---|---|
^ | 常用正则表达式 | |
$ | 行尾。与字符串的尾部或换行符之前的位置相匹配。不包括换行符本身 | |
. | 匹配除换行符以外的任意一个字符 | |
\w | 字母和数字 | [0-9A-Za-z] |
\W | 非字母和数字。\w以外的单个字符 | |
\s | 空字符 | [\t\n\r\f] |
\S | 非空字符 | |
\d | 数字 | [0-9] |
\D | 非数字 | |
[] | 指定字符范围 | 如:[0-9] |
* | 前面元素至少出现0次 | |
+ | 前面元素至少出现1次 | |
{m} | 前面的元素出现m 次 | |
{m,} | 前面的元素至少出现m 次 | |
{m,n} | 前面的元素出现至少m 次,至多n 次 | |
| | 选择,匹配其中的任何一个 | (a|b)*指a或b出现任意次 |
() | 正则表达式的群组化 | (ab)* 指ab出现任意次 |
[\u4E00-\u9FA5] | 汉字 | |
[^\u4E00-\u9FA5] | 非汉字 |
-
运算符
- 匹配操作符(
==~
)
用于检查字符串是否匹配 返回true或false
如:if( "abc" ==~ /abc/) { println 'true' } else { println 'flase' }
- 查找操作符(
=~
)
用于在字符串中查找匹配的子字符串
def string = "id=12345" def matcher = string =~ /id=/ def id = matcher.replaceAll('') println id //运行结果为:12345
- 匹配操作符(
转自:https://www.cnblogs.com/sky_online/archive/2010/05/14/1735712.html