Объект Regex.Regex
объект Regex
Этот объект определяет внутренние классы, описывающие совпадения с регулярными выражениями, и вспомогательные объекты.
| Суперобъекты | |
|---|---|
| Тип «Я» |
Классы
Исходный код
объект Groups
Объект-экстрактор, возвращающий группы совпадений. Использование этого экстрактора вместо исходного Regex гарантирует, что совпадение не будет вычисляться повторно.
import scala.util.matching.Regex.Groups
val date = """(\d\d\d\d)-(\d\d)-(\d\d)""".r
val text = "The doc spree happened on 2011-07-15."
val day = date replaceAllIn(text, _ match { case Groups(_, month, day) => s"$month/$day" })
Исходный код
Предоставляет информацию об успешном совпадении.
| Компаньон | объект |
|---|
Исходный код
объект Match
Объект-экстрактор для совпадений, возвращающий совпавшую строку.
Это можно использовать для написания функций замены, когда вам не нужны данные о совпадении. Например:
import scala.util.matching.Regex.Match
"""\w+""".r replaceAllIn ("A simple example.", _ match { case Match(s) => s.toUpperCase })
| Компаньон | класс |
|---|
Исходный код
тракт MatchData
Этот класс предоставляет методы для доступа к деталям совпадения.
Исходный код
класс MatchIterator(val source: CharSequence, val regex: Regex, val _groupNames: Seq[String]) extends AbstractIterator[String] with Iterator[String] with MatchData
Класс для перебора последовательности совпадений с регулярным выражением.
Это итератор, возвращающий совпавшие строки.
Запросы о данных совпадения относятся к текущему состоянию базового объекта-совпадения, который продвигает вызов hasNext или next.
Когда совпадения исчерпаны, запросы о данных совпадения приведут к исключению java.lang.IllegalStateException.
| См. также |
|---|
Конкретные методы
Исходный код
Цитата строк для использования буквально в шаблонах регулярных выражений.
Все метасимволы регулярных выражений во входной строке соответствуют сами себе буквально в выходной строке.
| Пример |
List("US$", "CAN$").map(Regex.quote).mkString("|").r
|
|---|
Исходный код
Цитаты строк замены для использования в методах замены.
Методы замены придают особое значение обратным слэшам (\) и знакам доллара ($) в строках замены, поэтому они не обрабатываются как литералы. Этот метод экранирует эти символы, чтобы результирующая строка могла использоваться как буквальная замена, представляющая входную строку.
| Параметры значения |
|
|---|---|
| Возвращает | Строка, которая может быть использована для замены совпадений с |
| Пример |
"CURRENCY".r.replaceAllIn(input, Regex quoteReplacement "US$") |
© 2002-2022 EPFL, with contributions from Lightbend.
Licensed under the Apache License, Version 2.0.
https://scala-lang.org/api/3.2.0/scala/util/matching/Regex$.html