Допустим, у меня есть этот код:
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
напрямую и не используя unapply?