PureBasic

RegularExpressionNamedGroupLength()

Синтаксис

Result = RegularExpressionNamedGroupLength(#RegularExpression , GroupName$)

Описание


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

Параметры

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

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

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

Комментарии

Группы в Регулярном выражении определяются путем включения в него подвыражения в круглых скобках "(" и ")". Доступ к группам можно получить либо по индексу (как это делается с помощью функции RegularExpressionGroupLength() ), либо используя присвоенное им имя, согласно такому синтаксису: "(?<name>)", как показано ниже в примере.

Пример

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

См. также

ExamineRegularExpression(), NextRegularExpressionMatch(), RegularExpressionNamedGroup(), RegularExpressionNamedGroupPosition(), RegularExpressionGroupLength()

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

Все

<- RegularExpressionNamedGroup() - Оглавление RegularExpression - RegularExpressionNamedGroupPosition()->