Помогите с регуляркой

Тема в разделе "Регулярные выражения", создана пользователем komyak, 15 янв 2011.

Статус темы:
Закрыта.
Модераторы: xpert13
  1. komyak

    komyak

    Регистр.:
    4 фев 2009
    Сообщения:
    482
    Симпатии:
    183
    Помогите пожалуйста с регуляркой:
    PHP:
    //В примере 3 нужных вида капчи.
    $str='<img src="http://site.ru/engine/lib/external/kcaptcha/index.php?PHPSESSID=fca3857811f1194d223b3005ca25db80" onclick="this.src=\'http://site.ru/engine/lib/external/kcaptcha/index.php?PHPSESSID=fca3857811f1194d223b3005ca25db80&n=\'+Math.random();" />
    <img src="/nospam_10704.jpeg" alt="" width="121" height="41" border="0" />
    <img src="http://site.ru/classes/lib/external/kcaptcha/index.php?PHPSESSID=9dd4892759b3745d578256e61acb0077">'
    ;

    preg_match_all('#<img src=\"(.+(kcaptcha|ospam|codegen|captcha).+)\".*#i'$str$capt);

    print_r($capt);
    Я вытаскиваю форму, а потом из неё пытаюсь выдернуть капчу. Но ничего не выходит...
    Вытаскиваю или с "мусором", какую-нибудь одну.
     
  2. pitkina

    pitkina

    Регистр.:
    1 апр 2007
    Сообщения:
    253
    Симпатии:
    176
    PHP:
    preg_match_all('#(?<=<img src=").+?(?:kcaptcha|ospam|codegen|captcha)[^"]+#i'$str$capt);
    или просто добавить модификатор 'U'
     
    komyak нравится это.
Статус темы:
Закрыта.