假设我有这个密码:
val string = "one493two483three"
val pattern = """two(\d+)three""".r
pattern.findAllIn(string).foreach(println)
我原以为 findAllIn
只返回 483
,但实际上它返回的是 two483three
。我知道我可以使用 unapply
只提取那个部分,但是我必须有一个整个字符串的模式,比如:
val pattern = """one.*two(\d+)three""".r
val pattern(aMatch) = string
println(aMatch) // prints 483
有没有其他方法可以实现这一点,不直接使用来自 java.util
的类,也不使用 unapplication?