Rimozione di tutto tra un tag (tra cui il tag stesso) utilizzando Regex / Eclipse

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

  •  23-09-2019
  •  | 
  •  

Domanda

Sono abbastanza nuovo per capire come funziona Regex, ma questo è solo frustrante.

Ho un documento voluminoso XML con un sacco di tag <description>blahblahblah</description>. Voglio rimuovere praticamente qualsiasi e tutte le istanze di <description></description>.

Sto usando Eclipse e ho provato alcuni esempi di espressioni regolari che ho trovato on-line, ma non funziona nulla.

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

Non dovrebbe funzionare?

EDIT:

Ecco il codice vero e proprio.

<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>

Nessuna soluzione corretta

Altri suggerimenti

Non ho familiarità con Eclipse, ma mi sarei aspettato la sua funzione di ricerca regex utilizzare sapore regex built-in di Java. Probabilmente solo bisogno di selezionare una casella con l'etichetta "DOTALL" o "single-line" o qualcosa di simile, oppure è possibile aggiungere il modificatore linea corrispondente per l'espressione regolare:

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

che permetterà al . per abbinare a capo, che non è così per impostazione predefinita.

EDIT: Questo è supponendo che non vi sono a capo all'interno dell'elemento <description>, che è l'unico motivo che mi viene in mente perché la vostra espressione regolare non avrebbe funzionato. Sono anche supponendo che in realtà sta facendo una ricerca regex; è che automatica in Eclipse, o si fa a dover scegliere tra regex e la ricerca letterale?

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top