• 🔥 Бесплатный курс от Академии Кодебай: «Анализ защищенности веб-приложений»

    🛡 Научитесь находить и использовать уязвимости веб-приложений.
    🧠 Изучите SQLi, XSS, CSRF, IDOR и другие типовые атаки на практике.
    🧪 Погрузитесь в реальные лаборатории и взломайте свой первый сайт!
    🚀 Подходит новичкам — никаких сложных предварительных знаний не требуется.

    Доступ открыт прямо сейчас Записаться бесплатно

Группировка В Символьных Классах Regexp

  • Автор темы Автор темы Brabus
  • Дата начала Дата начала

Brabus

New member
17.03.2008
1
0
Добрый день :facepalm: Вопрос по регулярным выражениям.
Подскажите пожалуйста варианты решения проблемы. Связана она с исключающими символьными классами [ ... ].
Вот например, паттерн
Код:
/[^abcd]/
соответствует любому символу в строке, за исключением этих четырех букв. Например: alphabet
Мне необходимо сгруппировать символы в этом исключающем списке, написать что-то типа
Код:
/[^(ab)(cd)]/
, чтобы из строки выбрать все, за исключением этих двух последовательностей.
Чтобы было: alphabet
Т.е. надо найти все слова, в которых нет конкретной последовательности символов, например (ab) или (cd).

А по факту получается, что круглые собки в символьном классе понимаются как обычные литералы, и как и прежде паттерн исключает вхождение всех 4-х букв по-отдельности.
Подскажите, как это можно реализовать, каким регексом?
 
Может просто заменить?

PHP:
echo preg_replace("/(:?ab|cd)/", "" ,"alphabetcdabd");
.

получится вроде тотже результат!
 
Мы в соцсетях:

Взломай свой первый сервер и прокачай скилл — Начни игру на HackerLab