Так что я мог бы написать:
val res = """(\d*).*""".r.replaceAllIn(s,"""\1""")
Пока я получаю буквальное «1» вместо захваченной группы.
Заранее спасибо.
Попробуйте: $1 вместо \1.
$1
\1
Регламент Scala использует java.util.regex внизу (по крайней мере на JVM). Теперь, если вы посмотрите replaceAll на Java документах, вы увидите это:
Обратите внимание, что при замене следует использовать обратную косую черту () и знаки доллара ($) Строка может привести к тому, что результаты будут другими, чем если бы трактуется как буквенная замещающая строка. Знаки доллара можно лечить в качестве ссылок на захваченные подпоследовательности, как описано выше, и обратные косые черты используются для экранирования буквенных символов в замене строка.