regex

начиная с 1.4.0

Константы

Pattern : map =

{
  UNIX_LINES=1,
  CASE_INSENSITIVE=2,
  I=2,
  COMMENTS=4,
  MULTILINE=8,
  M=8,
  LITERAL=16,
  S=32,
  DOTALL=32,
  UNICODE_CASE=64,
  CANON_EQ=128,
  UNICODE_CHARACTER_CLASS=256,
  U=256,
  quote=def(s) { return string },
  matches=def(str,pattern) { return boolean },
  split=def(str,pattern,limit = 0) { return array },
  compile=def(pattern,flags = 0) { return PatternValue }
}

Функции

regex(pattern, flags = 0) (начиная с 1.4.0) - создаёт шаблон регулярного выражения и возвращает PatternValue

Типы


PatternValue

Функции

flags() (начиная с 1.4.0) - возвращает флаги шаблона

pattern() (начиная с 1.4.0) - возвращает шаблон в виде строки

matcher(input) (начиная с 1.4.0) - возвращает MatcherValue

matches(input) (начиная с 1.4.0) - проверяет, соответствует ли входная строка шаблону

split(input, limit = 0) (начиная с 1.4.0) - разбивает строку на основе совпадений шаблона

replaceCallback(input, callback) (начиная с 1.4.0) - заменяет строку результатом заданной функции

Пример

use "regex"
in = "пёс кот"
pattern = regex("(\w+)\s(\w+)", Pattern.U | Pattern.I)
println pattern.replaceCallback(in, def(m) = m.group(2) + "о" + m.group(1))

MatcherValue

Функции

start(group = ...) (начиная с 1.4.0) - возвращает начальную позицию найденного совпадения

end(group = ...) (начиная с 1.4.0) - возвращает позицию, следующую за последним символов найденного совпадения

find(start = 0) (начиная с 1.4.0) - сбрасывает состояние матчера и пытается найти следующее совпадение

group(group = 0) (начиная с 1.4.0) - возвращает найденную группу

pattern() (начиная с 1.4.0) - возвращает шаблон

region(start, end) (начиная с 1.4.0) - задаёт ограничения для текущего региона

replaceFirst(replacement) (начиная с 1.4.0) - заменяет первое совпадение на заданную строку

replaceAll(replacement) (начиная с 1.4.0) - заменяет все совпадения на заданную строку

replaceCallback(callback) (начиная с 1.4.0) - заменяет строку результатом заданной функции

Пример

use "regex"
in = "пёс кот"
pattern = regex("(\w+)\s(\w+)", Pattern.U | Pattern.I)
matcher = pattern.matcher(in)
println matcher.replaceCallback(def(m) = m.group(2) + "о" + m.group(1))

reset(input = "") (начиная с 1.4.0)

usePattern(patternvalue) (начиная с 1.4.0)

useAnchoringBounds(status) (начиная с 1.4.0)

hasAnchoringBounds() (начиная с 1.4.0)

useTransparentBounds(status) (начиная с 1.4.0)

hasTransparentBounds() (начиная с 1.4.0)

hitEnd() (начиная с 1.4.0)

lookingAt() (начиная с 1.4.0)

matches() (начиная с 1.4.0)

groupCount() (начиная с 1.4.0)

regionStart() (начиная с 1.4.0)

regionEnd() (начиная с 1.4.0)

results matching ""

    No results matching ""