On 19/06/2013 10:44, MaX wrote:
con sed ho trovato questo problema:

$ echo '<img src="http://url-immagine";>' | sed 's/<img
src=".*">/[img].*[\/img]/g'

e il risultato purtroppo è questo:
[img].*[/img]

invece di
[img]"http://url-immagine[/img]

alcune idee?

Hai dimenticato di catturare la parte che ti interessa con \( \) e di ristamparlo nell'output con \1:

$ echo '<img src="http://url-immagine";>' | sed 's/<img src="\(.*\)">/[img]\1[\/img]/g'

Visto che il pattern .* è greedy (si espande il più possibile fino al carattere \n), dovresti cercare [^"] cioè "qualsiasi carattere tranne le virgolette":

$ echo '<img src="http://url-immagine";>' | sed 's/<img src="\([^"]*\)">/[img]\1[\/img]/g'

E già che ci sei, converrebbe prevedere la presenza di altre coppie 'key="value"' prima di '>', le quali andranno scartate:

$ echo '<img src="http://url-immagine"; foo="bar">' | sed 's/<img src="\([^"]*\)"[^>]*>/[img]\1[\/img]/g'

--
Kind regards,
                                                          Marco Romano.


--
Per REVOCARE l'iscrizione alla lista, inviare un email a debian-italian-requ...@lists.debian.org con oggetto "unsubscribe". Per
problemi inviare un email in INGLESE a listmas...@lists.debian.org

To UNSUBSCRIBE, email to debian-italian-requ...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org
Archive: http://lists.debian.org/51c1aae9.1050...@gmail.com

Reply via email to