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

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

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

regexp

NickProstoNick

Статус как статус :)
Lotus Team
22.08.2008
1 851
27
Всем привет!
Нужна помощь. Есть текст
HTML:
<br/>
<br/>
<@f> ertert DHDocNumber</@f>
</p>
<@f> 1234</@f><p>какой-то текст</p>

<ls> ertert <@f>erty</@f> DHDocNumber</ls>
В нем надо найти все теги <ls> и <@f> за один проход

Моих мозгов хватило на такую конструкцию :(
JavaScript:
(<@[fF]>.*<\/@[fF]>)|(<[lL][sS]>.*<\/[lL][sS]>)

Результат - 3 совпадения. Мне же надо получить сначала все теги <@f>, а потом все <ls>
 
Всем привет!
Нужна помощь. Есть текст
HTML:
<br/>
<br/>
<@f> ertert DHDocNumber</@f>
</p>
<@f> 1234</@f><p>какой-то текст</p>

<ls> ertert <@f>erty</@f> DHDocNumber</ls>
В нем надо найти все теги <ls> и <@f> за один проход

Моих мозгов хватило на такую конструкцию :(
JavaScript:
(<@[fF]>.*<\/@[fF]>)|(<[lL][sS]>.*<\/[lL][sS]>)

Результат - 3 совпадения. Мне же надо получить сначала все теги <@f>, а потом все <ls>
варианты вложенности - только @if в ls ?
и зачем варианты с регистрами - вродиж есть у регулярок ключ нечувствительности
 
Вообще вложенности быть не должно, но глупость непобедима :)
Потому нужна любая вложенность. Но я наверное буду делать через рекурсию
 
Идея в следующем. Нужно регулярное выражение, которое возвращает последнее вхождение <ls> или <@f> которое не содержит ни один из упомянутых тегов
В общем осилил. Получилась вот такая конструкция:
JavaScript:
(<@f>(?!.*<ls>)(?!.*<@f>)(.*?)<\/@f>)|(<ls>(?!.*<ls>)(?!.*<@f>)(.*?)<\/ls>)
 
Последнее редактирование:
Мы в соцсетях:

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