Regex: Excluir palavras da seção --- comentários ---

Regex: Excluir palavras da seção --- comentários ---

Tenho em um blog muitos links começando comhttps://meusite.com. Quero excluir esses links (mas antes de /story1.html, /story2.html, etc., da seção de comentários específica

<!-- FLAGS1 --> <div class="cotarerField"> <div align="right">

<a href="https://mywebsite.com/story1.html"><img src="index_files/flag_lang_ro.jpg" title="ro" alt="ro" width="28" height="19" /></a>&nbsp; 
<a href="https://mywebsite.com/fr/story2.html"><img src="index_files/flag_lang_fr.jpg" title="fr" alt="fr" width="28" height="19" /></a>&nbsp; 
<a href="https://mywebsite.com/en/story3.html"><img src="index_files/flag_lang_en.jpg" title="en" alt="en" width="28" height="19" /></a>&nbsp; 
<a href="https://mywebsite.com/es/story4.html"><img src="index_files/flag_lang_es.jpg" title="es" alt="es" width="28" height="19" /></a>&nbsp; 
<a href="https://mywebsite.com/pt/story5.html"><img src="index_files/flag_lang_pt.jpg" title="pt" alt="pt" width="28" height="19" /></a>&nbsp; 
<a href="https://mywebsite.com/ar/story6.html"><img src="index_files/flag_lang_ae.jpg" width="28" height="19" title="ar" alt="ar" /></a>&nbsp; 
<a href="https://mywebsite.com/zh/story7.html"><img src="index_files/flag_lang_zh.jpg" width="28" height="19" title="zh" alt="zh" /></a>&nbsp; 
<a href="https://mywebsite.com/hi/story8.html"><img src="index_files/flag_lang_hi.jpg" width="28" height="19" title="hi" alt="hi" /></a>&nbsp; 
<a href="https://mywebsite.com/de/story9.html"><img src="index_files/flag_lang_de.jpg" width="28" height="19" title="de" alt="de" /></a>&nbsp; 
<a href="https://mywebsite.com/ru/story10.html"><img src="index_files/flag_lang_ru.jpg" width="28" height="19" title="ru" alt="ru" /></a>
</div>
<!-- FLAGS1 -->

ou você pode conferir aqui https://pastebin.com/Dtt3KjME

O RESULTADO ESPERADO (excluir tudo https://mywebsite.com/)

<!-- FLAGS1 --> <div class="cotarerField"> <div align="right">

<a href="story1.html"><img src="index_files/flag_lang_ro.jpg" title="ro" alt="ro" width="28" height="19" /></a>&nbsp; 
<a href="fr/story2.html"><img src="index_files/flag_lang_fr.jpg" title="fr" alt="fr" width="28" height="19" /></a>&nbsp; 
<a href="en/story3.html"><img src="index_files/flag_lang_en.jpg" title="en" alt="en" width="28" height="19" /></a>&nbsp; 
<a href="es/story4.html"><img src="index_files/flag_lang_es.jpg" title="es" alt="es" width="28" height="19" /></a>&nbsp; 
<a href="pt/story5.html"><img src="index_files/flag_lang_pt.jpg" title="pt" alt="pt" width="28" height="19" /></a>&nbsp; 
<a href="ar/story6.html"><img src="index_files/flag_lang_ae.jpg" width="28" height="19" title="ar" alt="ar" /></a>&nbsp; 
<a href="zh/story7.html"><img src="index_files/flag_lang_zh.jpg" width="28" height="19" title="zh" alt="zh" /></a>&nbsp; 
<a href="hi/story8.html"><img src="index_files/flag_lang_hi.jpg" width="28" height="19" title="hi" alt="hi" /></a>&nbsp; 
<a href="de/story9.html"><img src="index_files/flag_lang_de.jpg" width="28" height="19" title="de" alt="de" /></a>&nbsp; 
<a href="ru/story10.html"><img src="index_files/flag_lang_ru.jpg" width="28" height="19" title="ru" alt="ru" /></a>
</div>
<!-- FLAGS1 -->

Responder1

  • Ctrl+H
  • Encontre o que:(?:\A[\s\S]*<!-- FLAGS1 -->|\G)(?:(?!<!-- FLAGS1 -->)[\s\S])+?\Khttps://mywebsite\.com/(?=[\s\S]*<!-- FLAGS1 -->)
  • Substituir com:LEAVE EMPTY
  • confira Envolver
  • verifique expressão regular
  • Replace all

Explicação:

(?:                         # non capture group
  \A                        # beginning of file
  [\s\S]*                   # 0 or more any character
  <!-- FLAGS1 -->           # literally
 |                          # OR
  \G                        # restart from last match position
)                           # end group
(?:                         # non capture group (Tempered Greedy Token)
  (?!<!-- FLAGS1 -->)       # negative lookahead, make sure we haven't <!-- FLAGS1 -->
  [\s\S]                    # any character
)+?                         # end group, appears 1 or more times, not greedy
\K                          # forget all we have seen until this position
https://mywebsite\.com/     # text to be removed
(?=[\s\S]*<!-- FLAGS1 -->)  # positive lookahead, make sure we have <!-- FLAGS1 -->  after

Dado:

<a href="https://mywebsite.com/ru/story10.html"><img src="index_files/flag_lang_ru.jpg" width="28" height="19" title="ru" alt="ru" /></a>

<!-- FLAGS1 --> <div class="cotarerField"> <div align="right">

<a href="https://mywebsite.com/story1.html"><img src="index_files/flag_lang_ro.jpg" title="ro" alt="ro" width="28" height="19" /></a>&nbsp; 
<a href="https://mywebsite.com/fr/story2.html"><img src="index_files/flag_lang_fr.jpg" title="fr" alt="fr" width="28" height="19" /></a>&nbsp; 
</div>

<!-- FLAGS1 -->

<a href="https://mywebsite.com/ru/story10.html"><img src="index_files/flag_lang_ru.jpg" width="28" height="19" title="ru" alt="ru" /></a>

Resultado para determinado exemplo:

<a href="https://mywebsite.com/ru/story10.html"><img src="index_files/flag_lang_ru.jpg" width="28" height="19" title="ru" alt="ru" /></a>

<!-- FLAGS1 --> <div class="cotarerField"> <div align="right">

<a href="story1.html"><img src="index_files/flag_lang_ro.jpg" title="ro" alt="ro" width="28" height="19" /></a>&nbsp; 
<a href="fr/story2.html"><img src="index_files/flag_lang_fr.jpg" title="fr" alt="fr" width="28" height="19" /></a>&nbsp; 
</div>

<!-- FLAGS1 -->

<a href="https://mywebsite.com/ru/story10.html"><img src="index_files/flag_lang_ru.jpg" width="28" height="19" title="ru" alt="ru" /></a>

Captura de tela (antes):

insira a descrição da imagem aqui

Captura de tela (depois):

insira a descrição da imagem aqui

informação relacionada