Ho un problema difficile. Devo apportare una piccola modifica a un gran numero di file xml (500+). La modifica comporta la commutazione di un valore da "falso" a "vero". La linea che deve cambiare appare così:
<SizeIsMeasuredLineLine>false</SizeIsMeasuredLineLine>
E deve diventare:
<SizeIsMeasuredLineLine>true</SizeIsMeasuredLineLine>
Sfortunatamente ci sono numerose istanze di questo set di tag in ogni file, quindi non possiamo fare una semplice ricerca e sostituzione. La cosa che rende unico questo set di tag è che seguono alcune righe:
<CID>ITEMNAME.BUS.ITEMNAME.DKV</CID>
Tuttavia, ogni file ha un nome di elemento diverso, quindi avevo usato i caratteri jolly per filtrarli.
<CID>.*BUS..*.DKV</CID>
Il problema è che il numero di linee tra la parte CID e la linea che deve essere modificata non è coerente da un file all'altro. Devo trovare un modo per jolly le linee intermedie e sostituire la linea di dimensioni.
Qualche idea? Ho già provato:
<CID>.*BUS..*.DKV</CID>.*?<SizeIsMeasuredLineLine>true</SizeIsMeasuredLineLine>
Ma per qualche ragione che non ha funzionato. Grazie in anticipo!
Modifica in risposta al commento:
Fondamentalmente quello che sto dicendo è che il codice è simile al seguente:
<CID>ITEMNAME.BUS.ITEMNAME.DKV</CID>
<tag>Some Number of Other lines</tag>
<tag>Some Number of Other lines</tag>
<tag>Some Number of Other lines</tag>
<SizeIsMeasuredLineLine>false</SizeIsMeasuredLineLine>
E le altre sezioni del codice sembrano:
<CID>ITEMNAME.COLR.ITEMNAME.FCLR</CID>
<tag>Some Number of Other lines</tag>
<tag>Some Number of Other lines</tag>
<tag>Some Number of Other lines</tag>
<SizeIsMeasuredLineLine>false</SizeIsMeasuredLineLine>
in altri punti del codice. Quindi sto usando la linea CID .BUS .DKV come punto di partenza. Fondamentalmente ho bisogno di cambiare la prima occorrenza della linea SizeisMeasured che arriva direttamente DOPO la linea CID .BUS .DKV. Ma ci sono molte altre linee in mezzo (nessuna delle quali è coerente da un file all'altro) di cui non mi interessa e che stanno rovinando la mia ricerca.