PureBasic

CreateRegularExpression()

Синтаксис

Result = CreateRegularExpression(#RegularExpression , Pattern$ [, Flags])

Описание


Создаёт новое Регулярное выражение (как объект с Номером #RegularExpression), используя указанный шаблон с Регулярным выражением.

Параметры

#RegularExpression Номер, идентифицирующий новое Регулярное выражение. В качестве этого параметра можно использовать значение #PB_Any, чтобы сгенерировать этот Номер автоматически.
Pattern$ Шаблон, в виде строки с Регулярным выражением, которое будет применяться к исходному тексту для поиска соответствующих строк, а так же для их извлечения или замены.
Flags (дополн.) Этот параметр может быть комбинацией следующих значение (с помощью оператора '|'):
  #PB_RegularExpression_DotAll    : '.' соответствует любому символу, включая символы новой строки.
  #PB_RegularExpression_Extended  : Символы пробела и комментария '#' игнорируются.
  #PB_RegularExpression_MultiLine : Символы '^' и '$' являются началом и концом строки в многострочном тексте.
  #PB_RegularExpression_AnyNewLine: Принимать 'CR', 'LF', и 'CRLF' как символы новой строки.
  #PB_RegularExpression_NoCase    : Сравнение и сопоставление без учета регистра.

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

Возвращает не нулевое значение, если Регулярное выражение (как объект) было создано успешно, в противном случае 0. Если в качестве параметра #RegularExpression использовалось значение #PB_Any, то в случае успеха будет возвращен сгенерированный Номер.
Если в шаблоне была обнаружена ошибка, значение 'Result' будет равно 0. Чтобы получить больше информации об ошибке, используйте команду RegularExpressionError().

Комментарии

Если Регулярное выражение более не используется, воспользуйтесь функцией FreeRegularExpression(), для того чтобы освободить занятые ресурсы.

Пример

; Этому выражению соответствует каждое слово из 3 символов, которое начинается с символа в нижнем регистре,
; за ним следует символ 'b' и заканчивается символом в верхнем регистре. напр.: abC
;
If CreateRegularExpression(0, "[a-z]b[A-Z]")
    Debug MatchRegularExpression(0, "abC") ; Отобразит 1
    Debug MatchRegularExpression(0, "abc") ; Отобразит 0
Else
    Debug RegularExpressionError()
EndIf

См. также

RegularExpressionError(), FreeRegularExpression()

Поддерживаемые OS

Все

<- CountRegularExpressionGroups() - Оглавление RegularExpression - ExamineRegularExpression()->