Регулярные выражения
Здесь описаны функции для работы с регулярными выражениями.
Функция FindFirstRegExp находит первое вхождение регулярного выражения re в указанной строке src. Функция возвращает массив строк. Первый элемент содержит подстроку совпадающую с регулярным выражением, остальные элементы содержат значения групп (...), если они определены в регулярном выражении.
arr.str a &= FindFirstRegExp(`This45i33s a isi777s inis1i2sg`, `is(\d*)i(\d+)s`)
// a = {`is45i33s`, `45`, `33`}
Функция FindRegExp находит все вхождения регулярного выражения re в указанной строке src. Функция возвращает массив массивов. Первый элемент в каждом из массивов содержит подстроку совпадающую с регулярным выражением.
arr.arr.str a &= FindRegExp(`My email is [email protected]`, `(\w+)@(\w+)\.(\w+)`)
// a = { { `[email protected]`, `xyz`, `example`, `com`} }
a &= FindRegExp(`This is a test string`, `i.`)
// a = { { `is` }, {`is`}, {`in`} }
Функция Match определяет содержит ли данная строка вхождение указанного регулярного выражения.
bool a = Match(`somethiabng striabnbg`, `a.b`) // false
a = Match(`somethianbg string`, `a.b`) // true
Функция RegExp возвращает первое вхождение регулярного выражения re в указанной строке src. Если соответствия не найдено, то возвращается пустая строка.
str input = "This is a string тестовое значение"
ret = RegExp(input, `is (.{2})`) + RegExp(input, `е(.+?)е`)
// isстово
Функция ReplaceRegExp находит все вхождения регулярного выражения re в указанной строке src и заменяет их на строку repl. В параметре repl можно указывать $i или ${i} для i-го подсовпадения.
str s = ReplaceRegExp("This is a string", `i(.{2})`, "xyz")
// Thxyzxyza strxyz
s = ReplaceRegExp(" email is [email protected]", `(\w+)@(\w+)\.(\w+)`, "${3}.${2}@zzz")
// email is [email protected]
Last modified 2yr ago