Задать вопрос
kocherman
@kocherman

Как научить регулярное выражение, чтобы preg_match_all искала строки где нет подмаски?

Например, есть регулярное выражение

"^.*<a.*$"

которое ищет все строки с ссылками.

Как сделать такое выражение, чтобы preg_match_all выдало все строки где нет ссылок?

UPD Проблема в том, что я не могу ничего использовать кроме регулярного выражения, скрипт обфусцирован. Внедрить свою логику не получится.

Miraage, Я не уверен, так как не вижу логики, но ищет оно по строкам по файлу. То есть вполне возможно, что там он рыскает по файлу и каждую строку чекает preg_match.
  • Вопрос задан
  • 4082 просмотра
Подписаться 3 Оценить 1 комментарий
Пригласить эксперта
Ответы на вопрос 3
TROODON
@TROODON
/ Everybody stand back /
i know regular expressions


Регулярка:
/^(?>(?!(\<a.*href)|\<\/a).)*$/umi

Пример:
ideone.com/g5vDT
Исходник примера:
pastebin.com/ZkWguPS2
Ответ написан
Meliborn
@Meliborn
Что то мне подсказывает, что тут нужен XPath :)
Ответ написан
@Hint
По-моему возможны только «урезанные варианты».
Без буквы a: ^[^a]+$
Без скобки: ^[^<]+$
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы