PureBasic

RegularExpressionGroup()

Синтаксис

Result$ = RegularExpressionGroup(#RegularExpression , Group)

Описание


Извлекает строку, которая соответствует указанной группе Регулярного выражения, после вызова функции NextRegularExpressionMatch().

Параметры

#RegularExpression Номер идентифицирующий используемое Регулярное выражение. Для этого Регулярного выражения должны быть вызваны функции ExamineRegularExpression() и NextRegularExpressionMatch().
Group Индекс используемой группы. Первая группа имеет индекс 1.

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

Возвращает строку, соответствующую указанной группе Регулярного выражения.

Комментарии

Группы в Регулярном выражении определяются путем включения в него подвыражения в круглых скобках "(" и ")". Группы нумеруются, как они появляются в регулярном выражении - слева направо. Первая группа имеет индекс 1.
Функция CountRegularExpressionGroups() может использоваться для определения количества групп в регулярном выражении.

Как альтернатива для RegularExpressionGroup(), может использоваться функция RegularExpressionNamedGroup().

Пример

; Это выражение соответствует строке настройки цвета (со значением red, green или blue)
; Цвета сгруппированы скобками (), и в случае совпадения извлекается значение цвета.
;
If CreateRegularExpression(0, "color=(red|green|blue)")
    If ExamineRegularExpression(0, "stype=bold, color=blue, margin=50")
        While NextRegularExpressionMatch(0)
            Debug "The color is " + RegularExpressionGroup(0, 1); Возвратит из текста строку "blue", она соответствует группе №1.
        Wend
    EndIf
Else
    Debug RegularExpressionError()
EndIf

См. также

ExamineRegularExpression(), NextRegularExpressionMatch(), RegularExpressionGroupPosition(), RegularExpressionGroupLength(), RegularExpressionNamedGroup()

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

Все

<- RegularExpressionError() - Оглавление RegularExpression - RegularExpressionGroupLength()->