Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   AutoIt (http://forum.oszone.net/forumdisplay.php?f=103)
-   -   [решено] StringRegExp получать все, что после либо строки1, либол строки2 (http://forum.oszone.net/showthread.php?t=186918)

evg64 29-09-2010 22:33 1507764

StringRegExp получать все, что после либо строки1, либол строки2
 
Добрый день! Пытаюсь написать регулярное выражение, где перед возвращаемым значением содержалась бы либо строка1, либо строка2, в каждой из которых более 1 символа.
Пример:
Код:

#Include <Array.au3>
$sSource="aa123ccbb123cc"
; Строка1 в примере "aa", строка2 "bb". То есть, надо выводить все, что между aa и cc либо bb и cc
$sPattern="aa(.*?)cc|bb(.*?)cc"
$aReturn=StringRegExp($sSource,$sPattern,3)
_ArrayDisplay($aReturn,"aReturn")

В примере возвращается 3 значения. Два из них - 123, третье - пустое. Проблема в пустом значении. Как переконструировать все так, чтобы выводились только непустые совпадения?
P.S. Вариант с удалением из массива пустых значений путем их перебора в цикле for не предлагать) Необходимо возвращать только непустые совпадения сразу из StringRegExp.

Creat0R 29-09-2010 23:00 1507780

Код:

$sPattern = "(?:aa|bb)(.*?)cc"


Время: 23:42.

Время: 23:42.
© OSzone.net 2001-