PDA

View Full Version : trovare e sostituire con espressioni


rampas
04-08-2006, 10:47
ciao ragazzi scusate l'ignoranza ma mi servirebbe una mano, e credo che solo voi mi possiate aiutare con una espressione regolare semplicissima.
se io voglio sostituire del testo diverso per ogni pagina tranne che per l'inizio e la fine come faccio che devo scrivere?
per esempio:
<img src="../images/flagfr.gif" width="25" height="15">
finiscon e iniziano tutte le righe nelle pagine diverse che ho con le cose in grassetto ma cambia il nome della gif per intenderci.
come faccio a sostituire tutto in una volta sola e far prendere tutto quello tra le cose in grassetto?
grazie e scusate l'incompetenza ma nn è il mio campo diretto :help:

andbin
04-08-2006, 10:57
Innanzitutto dovresti dirci con quale linguaggio vuoi effettuare la sostituzione. ;)

rampas
04-08-2006, 11:01
con unix è d'aiuto?
io ho semplicemente degli html ma sono tanti circa 400 e avevo bisogno di fare sta sostituzione ma contavo di farlo con edtipad che supporta le regular expression

andbin
04-08-2006, 11:06
con unix è d'aiuto?
io ho semplicemente degli html ma sono tanti circa 400 e avevo bisogno di fare sta sostituzione ma contavo di farlo con edtipad che supporta le regular expressionAllora si può fare uno script in Perl oppure uno script per la shell Bash utilizzando anche l'utility 'sed'.

fedo
04-08-2006, 11:08
<img src="../images/flagfr.gif" width="25" height="15">
finiscon e iniziano tutte le righe nelle pagine diverse che ho con le cose in grassetto ma cambia il nome della gif per intenderci.
come faccio a sostituire tutto in una volta sola e far prendere tutto quello tra le cose in grassetto?
grazie e scusate l'incompetenza ma nn è il mio campo diretto :help:

Se per ogni pagina è diverso il nomefile e non trovi il modo di "serializzare" questo nomefile, è difficile fare quello che chiedi, ovvero sostituzione in modalità batch..

se i nomi delle gif fossero del tipo pagexx.gif dove xx indica un numero progressivo (es. 01 , 02 , 03,..) allora si potrebbe fare qualcosa di automatico in maniera non troppo complessa..

Se i nomi sono così diversi, devi purtroppo "attingerli" da una forma di db...

Con le espressioni regolari si possono fare belle cose, ma devi fare un pò di pratica se non le hai mai usate..

ciao

rampas
04-08-2006, 13:39
vi ringrazio molto delle risposte ma ho scoperto per fortuna è na cavolata basta scrivere <!--(.*)--> per dire, che toglie un commento anche se diverso in goni pagina grazie e tutti

trallallero
04-08-2006, 13:56
vi ringrazio molto delle risposte ma ho scoperto per fortuna è na cavolata basta scrivere <!--(.*)--> per dire, che toglie un commento anche se diverso in goni pagina grazie e tutti

scusa la puoi spiegare meglio ? :what:
stavo per farti uno scriptino con sed e/o awk di almeno un paio di righe belle pienotte e tu te ne esci che é 'na cavolata ? :eek:
il culo del principiante ??? :D
.* con regexp é "ricerca tutto" ma il resto non lo capisco ...

andbin
04-08-2006, 14:02
Sì, spiega anche a me.... cosa centra <!--(.*)--> con il tag <img> e il nome della gif???

rampas
04-08-2006, 14:27
scusate ma mi sa che nella mia completa ignoranza manco mi sono espresso bene.
quel <!-- è solo per esempio e il fatto della gif era per dire il mio problema, cioè che cn un trova sostituishi normale nn potevo cancellare quella riga in tutti gli html che ho dato che il nome .gif cambia in ognuno.
la cosa che ho scritto è stata <img(.*)"15"> e con quel prog che vi dicevo edit pad ho sostituito tutto quel che era dentro a quel scritto su.
io gli html li ho sul pc scaricati e li ho aperti con l'editor edit pad.
scusate le incomprensioni date dalla mia niubbiaggine

trallallero
04-08-2006, 14:44
scusate ma mi sa che nella mia completa ignoranza manco mi sono espresso bene.
quel <!-- è solo per esempio e il fatto della gif era per dire il mio problema, cioè che cn un trova sostituishi normale nn potevo cancellare quella riga in tutti gli html che ho dato che il nome .gif cambia in ognuno.
la cosa che ho scritto è stata <img(.*)"15"> e con quel prog che vi dicevo edit pad ho sostituito tutto quel che era dentro a quel scritto su.
io gli html li ho sul pc scaricati e li ho aperti con l'editor edit pad.
scusate le incomprensioni date dalla mia niubbiaggine
che scemo :doh: probabilmente ci sarei arrivato anch'io ... uso xemacs come editor e ha la funzione Replace (Regexp) che uso spesso col xxx.*zzz perché comodissimo!
e vabbé, bravo rampas :)

fedo
05-08-2006, 14:14
anch'io non avevo compreso bene il problema!

ciao