scala 正则匹配
时间: 2024-06-21 11:02:50 浏览: 10
Scala 中的正则表达式(Regular Expressions)是用于处理文本字符串的强大工具,它们在 `scala.util.matching` 包中的 `Regex` 类中定义。在 Scala 中,你可以使用 `Regex` 对象进行模式匹配、查找和替换操作。以下是一些基本的正则表达式操作:
1. 创建正则表达式:使用 `scala.util.matching.Regex` 的构造函数,传入一个正则模式。例如:
```scala
val regex = """\b[a-z]+\b""" // 匹配单个单词字符
```
2. 模式匹配:`matches()` 方法检查输入字符串是否完全匹配正则表达式,返回一个布尔值。
```scala
val input = "hello world"
if (regex.matches(input)) println("Match found")
```
3. `findFirstIn()` 和 `findAllIn()`:查找输入字符串中第一个或所有匹配项。
```scala
val matches = regex.findAllIn(input)
for (match <- matches) println(match)
```
4. `findAll()`:在整个输入字符串中查找所有匹配,返回 `MatchResult` 序列。
```scala
val results = regex.findAll(input)
results.foreach(println)
```
5. `replaceFirst()` 和 `replaceAll()`:替换匹配到的第一个或全部内容。
```scala
val replaced = regex.replaceAll(input, "Scala")
println(replaced)
```