problème de substitution avec sed (résolu)

Bonjour le forum !

Je sus en train de me prendre la tête grave avec sed !!!
Je voudrai transformer un truc du genre :

(tout est sur la même ligne)
en :libsdl1.2debian-alsa | libsdl1.2debian-all | libsdl1.2debian-esd | libsdl1.2debian-arts | libsdl1.2debian-oss | libsdl1.2debian-nas
J’ai penser au début à sed "s/(.*) |/ |/g" mais ça ne fonctionne pas du tout, normal me direz vous ! Car ça ne garde que le premier et le dernier membre de la ligne.

Si quelqu’un a des suggestions…

Merci d’avance :wink:

Voila :laughing: 

Edit : Amélioration pour ne garder qu'un seul espace :
[code]'s/\(.\) ([^|]*)/\1/g'[/code]

Voila :laughing:

Edit : Amélioration pour ne garder qu’un seul espace :

Merci bien Yoko !
Va vraiment falloir que je m’y mette au expressions régulières :frowning:

bravo yoko …
c’est vrai que c’est vraiment puissant sed et les expressions …
c’est là où je me dis, le plus souvent : “pfff p#*%£# mais pourquoi ça [size=150]marche[/size] pas pfff:smt017 :smiley:

ps: bon je suis pas en train de dire que j’arrive à faire marcher tout le reste hein … :confused:

Je n’ai pas de mérite j’ai eu des cours là dessus.

L’astuce que personne n’avait bien réussi à comprendre c’est l’usage des parenthèses.
En fait si tu veut réutiliser une partie de ce que tu substitue tu le met entre parenthèses (il faut les protéger), et tu les réaplique avec \1 puis \2 si c’est le second et ainsi de suite.

Oui ça j’avais déjà touché du doigt, oui … mais bon. :wink: