regexpIndex()

Функция “regexpIndex()” обеспечивает сопоставление с шаблоном с помощью регулярных выражений. Функция выполняет поиск соответствия указанному символу, начиная с заданной позиции.

Краткий обзор

int regexpIndex(строковое регулярное выражение, строковая строка [, параметры сопоставления]);

ПараметрОписание
rexexpРегулярное выражение. 
Примером может быть, например, «[a]+”
В этом примере выполняется поиск символа a. Знак + выполняет поиск по букве один или несколько раз, что означает, что знак + обозначает по крайней мере однократное повторение.
строкаСтрока, которая проверяется.
ОпцииДля сопоставления могут использоваться следующие клавиши:
StartPosition: задает начальную позицию для поиска:
(По умолчанию: int 0 = начало строки). -1 означает, что функция выполняет поиск символов, начинающихся с последнего символа строки. При значении -2 функция выполняет поиск, начиная с предпоследнего символа и т.д.
С учетом регистра: установите соответствие с учетом регистра
(по умолчанию: bool false).
Установите минимальное соответствие (по умолчанию: bool false). Пример минимального соответствия см. в главе regexpSplit().

Возвращаемое значение

  • Функция возвращает позицию первого совпадения с искомым символом. Индекс начинается с 0. Это означает, что первым совпадением символа s в слове “This” будет позиция 3.
  • Функция возвращает значение -1, если совпадение не найдено.
  • Функция возвращает значение -2, когда регулярное выражение содержит ошибку. Ошибки могут быть извлечены с помощью функции GetLastError().
  • Функция возвращает -3, когда функция содержит неправильные аргументы.

Ошибки

Смотрите выше

Описание

Функция “regexpIndex()” обеспечивает сопоставление с шаблоном с помощью регулярных выражений. Функция выполняет поиск соответствия указанному символу, начиная с заданной позиции.

ПРИМЕР

В первом примере выполняется поиск буквы n, начиная с позиции 0 (начало текста). Функция возвращает первое совпадение буквы. Первое совпадение буквы n — это ein (дас ист эиn тестирует mit n). Индекс вычисляется, начиная с 0. Таким образом, пример возвращает значение 10.

Во втором примере выполняется поиск буквы n, начиная с конца текста. Функция возвращает первое совпадение буквы. Первое совпадение буквы n, начиная с конца текста, равно n (Das ist ein Test mit n). Индекс вычисляется, начиная с 0. Таким образом, пример возвращает 21.


main(mapping event)
{
int i = 0;
i = regexpIndex("[n]+", "Das ist ein Test mit n", makeMapping("startPosition", 0));
DebugN("Position von 'n' in Das ist ein Test mit n. Gesucht ab Position 0:", i);

i = regexpIndex("[n]+", "Das ist ein Test mit n", makeMapping("startPosition", -1));
DebugN("Position von 'n' in Das ist ein Test mit n. Gesucht ab Ende der Zeichenkette:", i);
}

Назначение

Регулярные выражения

Смотрите также

regexpLastIndex()regexpSplit()

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *