#include <Array.au3> ; для использования _ArrayDisplay

; Тестовая строка
$sText = '<tage>Текст1</tage> <tage>Текст2</tage> <tage>Текст3</Tage>'

; флаг=0
If StringRegExp($sText, '\d') Then MsgBox(0, 'флаг=0', 'Да, строка содержит цифру')

; флаг=1, используется смещение для пошагового поиска всех элементов
$iOffset = 1
While 1
	$aRes = StringRegExp($sText, '(?i)<tage>(.*?)</tage>', 1, $iOffset)
	If @error Then ExitLoop ; Выход из цикла если более не найдено
	$iOffset = @extended ; Сохраняет позицию, от которой начать следующий поиск
	; Просмотр только одного элемента массива, так как в рег.выр. одна группа
	MsgBox(0, 'флаг=1', 'Найдено = ' & $aRes[0] & @LF & _
			'Позиция начала = ' & $iOffset - StringLen($aRes[0]) -14 & @LF & _ ; где 14=13+1 - длина тегов и 1 символ
			'Позиция конца = ' & $iOffset - 1) ; Позиции могут использоваться другими строковыми функциями
WEnd

; флаг=2, используется смещение, возвращает весь шаблон и группы
$iOffset = 1
While 1
	$aRes = StringRegExp($sText, '(?i)<tage>(.*?)</tage>', 2, $iOffset)
	If @error Then ExitLoop
	$iOffset = @extended
	_ArrayDisplay($aRes, "флаг=2")
WEnd

; флаг=3, возвращает все найденные группы
$aRes = StringRegExp($sText, '(?i)<tage>(.*?)</tage>', 3)
If @error Then Exit ; Проверка ошибки ОБЯЗАТЕЛЬНА.
_ArrayDisplay($aRes, "флаг=3") ; функция для просмотра массива

; флаг=4, возвращает все группы в виде массива массивов
$aRes = StringRegExp($sText, '(?i)(<tage>)(.*?)(</tage>)', 4)
If @error Then Exit MsgBox(0, 'Ошибка', 'Завершение скрипта') ; Проверка ошибки избавляет от неуловимой ошибки
For $i = 0 To UBound($aRes) - 1
	$aArray = $aRes[$i] ; приравнивание массива в переменную
	_ArrayDisplay($aArray, "флаг=4") ; функция для просмотра массива
Next