Re: Supprimer chaine de caractères

Top Page

Reply to this message
Author: Bruno Cudini
Date:  
To: alain
CC: guilde
Subject: Re: Supprimer chaine de caractères
On Fri, Sep 14, 2012 at 07:28:52PM +0200, ALD wrote:
> En fait je cherche à supprimer la ligne qui contient
> Téléphone;" et non à la remettre d'aplomb.


Pour faire ça, tu peux utiliser :
    sed '/T\él\éphone/d'


La syntaxe /regex/d permet de sélectionner les lignes qui matchent
'regex', et le d final indique le traitement à lui faire subir (ici,
delete)

> j’essayais avec
>
> sed 's/Téléphone;//'


Le & est un caractère spécial utilisé dans le remplacement de la regex,
mais pas dans le pattern à matcher (d'après la doc, j'ai pas vérifié).
Mais peut-être que du coup il est considéré spécial quand même, et qu'il
faut l'échapper à cause de ça.

> sans résultat. Finalement j'ai repris ta combinaison et je ke fais
> en 2 fois dans un pipe
> sed -e 's/\é//g' | sed -e 's/Tlphone;//'
> et ça fonctionne, meme si ce n'est pas trés élégant. .


Dans ce cas là ça vide juste la ligne, non ? Pour l'enlever complètement
je dirais que la syntaxe /regex/d est le meilleur moyen, mais peut-être
qu'il y en a d'autres.