Groovy的正则表达式
时间: 2024-03-11 22:42:49 浏览: 18
Groovy是一种基于Java的动态语言,它提了强大的正则表达式支持。在Groovy中,可以使用正则表达式来进行字符串匹配、替换和提取等操作。
以下是Groovy中使用正则表达式的一些常见操作:
1. 字符串匹配:
使用`=~`操作符可以将一个字符串与正则表达式进行匹配。例如:
```groovy
def str = "Hello, World!"
if (str =~ /Hello/) {
println("匹配成功")
}
```
2. 字符串替换:
使用`=~`操作符结合替换符号`/`可以将字符串中的匹配部分替换为指定的内容。例如:
```groovy
def str = "Hello, World!"
def newStr = str.replaceAll(/Hello/, "Hi")
println(newStr) // 输出:Hi, World!
```
3. 字符串提取:
使用`=~`操作符结合捕获组可以从字符串中提取匹配的部分。捕获组使用圆括号`()`表示。例如:
```groovy
def str = "My email is abc@example.com"
def matcher = str =~ /(\w+@\w+\.\w+)/
if (matcher.find()) {
println(matcher[0][1]) // 输出:abc@example.com
}
```
4. 正则表达式选项:
在Groovy中,可以使用正则表达式选项来修改匹配的行为。常见的选项包括:
- `i`:忽略大小写
- `m`:多行模式,使`^`和`$`匹配每一行的开头和结尾
- `s`:单行模式,使`.`匹配换行符
- `x`:忽略空白字符,可以使用空格和注释来组织正则表达式
以上是Groovy中正则表达式的简要介绍。