Ciao a tutti!
Sto aiutando un mio amico a creare uno script automatico che gli estragga alcuni link da una quantità enorme di file html, e volevo utilizzare le Regex per automatizzare il lavoro.
Ad esempio prendiamo questo codice:
robachenoncentranulla
robache'non'centranulla file'questononlovoglio.jpg' file'questolovoglio.doc'
file 'questolovoglio2.doc'
robachenoncentranulla
Per prendere tutti i link dei doc pensavo di usare questa regex:
Ovvero
1) prendi l'apice singolo (\')
2) prendi un qualsiasi carattere successivo (.)
3) continua il lavoro del . fino a nuovo ordine (*)
4) non continuare la ricerca fino ad altri apici (?) - in questo caso pare non serva, ma in uno dei miei innumerevoli tentativi era utile quindi l'ho lasciato -
4) fermati a doc' (doc\')
lo sto provando con RegExr, ma mentre funziona benissimo se in una riga non vi sono altri link (quindi un solo apice singolo prima del link che mi interessa), se nella stessa riga vi sono altri apici singoli prosegue a ritroso la ricerca fino al prime apice singolo della riga.
In pratica è come se fosse "avido" non tanto con gli apici successivi (che si risolve con ? e comunque si ferma all'estensione del file) ma con quelli precedenti.
Mi piacerebbe molto approfondire questa tecnica utilissima, ma purtroppo le mie conoscenze si limitano a questa
guida
trovata on-line, e il non riuscire a farle funzionare mi fa sentire davvero un idiota
Grazie a tutti per l'aiuto!
PS: già che ci siamo, lo script per prima cosa farà una "prima pulizia" con grep, poi passerà l'output a sed: come ci devo infilare la regex che verrà fuori? Ho provato con sed -r /regex/g ma non ha mai funzionato.