Removendo tudo entre uma tag (incluindo a própria tag) usando regex / eclipse

StackOverflow https://stackoverflow.com/questions/2541676

  •  23-09-2019
  •  | 
  •  

Pergunta

Sou bastante novo em descobrir como Regex funciona, mas este é apenas frustrante.

Eu tenho um grande documento XML com muitosdescription>blahblahblah</description> tags. Eu quero basicamente remover toda e qualquer instância de <description></description>.

Estou usando o Eclipse e tentei alguns exemplos de regex que encontrei on -line, mas nada funciona.

<description>(.*?)</description>

Isso não deveria funcionar?

EDITAR:

Aqui está o código real.

<description><![CDATA[<center><table><tr><th colspan='2' align='center'><em>Attributes</em></th></tr><tr bgcolor="#E3E3F3"><th>ID</th><td>308</td></tr></table></center>]]></description>

Nenhuma solução correta

Outras dicas

Não estou familiarizado com o Eclipse, mas esperaria que sua instalação de pesquisa regex usasse o sabor Regex interno de Java. Você provavelmente só precisa verificar uma caixa rotulada como "Dotall" ou "Single-Line" ou algo semelhante, ou pode adicionar o modificador embutido correspondente ao regex:

(?s)<description>(.*?)</description>

Isso permitirá o . Para combinar com o Newlines, que não é por padrão.

Editar: isso está assumindo são NEWLINES dentro do <description> Elemento, que é a única razão pela qual consigo pensar no motivo pelo qual seu regex não funcionaria. Também estou assumindo que você realmente está fazendo uma pesquisa regex; Isso é automático no eclipse ou você precisa escolher entre Regex e pesquisa literal?

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top