carlos_php
Новичок
regexp: отсутствие подстроки в тексте
Суть следующая, есть строка вида:
{text}pre {text}inner{/text}after{/text} aswdasdasdd
необходимо извлечь тег с содержимым {text}inner{/text} с таким условием,
что внутри него нет строк вида {text}, {/text}.
Нигде не могу найти информацию о том как искать по отсутствию подстроки.
Есть вариант искать так:
Но должен же быть способ проще.
Суть следующая, есть строка вида:
{text}pre {text}inner{/text}after{/text} aswdasdasdd
необходимо извлечь тег с содержимым {text}inner{/text} с таким условием,
что внутри него нет строк вида {text}, {/text}.
Нигде не могу найти информацию о том как искать по отсутствию подстроки.
Есть вариант искать так:
PHP:
function preParse($t){
preg_match("/{text}(.*{\/text})/isU", $t, $match);
if(preg_match("/{text}.*{\/text}/isU", $match[1], $match2))
$match[0] = preParse($match2[0]);
return $match[0];
}