[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: [SHELL] remplacer un caractère dans une sous-chaine



Sylvain Sauvage a écrit, vendredi 21 décembre 2007, à 10:31 :
> Jacques L'helgoualc'h, jeudi 20 décembre 2007, 22:05:14 CET
> > [...] Sed  connaît la négation /motif/!,
> 
>   Ah oui, tiens. On ne lit jamais assez bien les docs.

Justement, « info  sed » est bien  l'une des rares  documentations qu'on
peut  lire  d'un  bout  à  l'autre...   Bon,  aller  fouiner  aussi  sur
http://sed.sf.net/ peut aider.

> > >   Mais ça devient très lourd à gérer avec sed. Il vaudrait
> > > vraiment passer à un vrai langage (Ruby, Perl???).
> > 
> > Sed est Turing-complet, mécréant !
> 
>   Argument facile : c???est une chose d???avoir une machine de
> Turing, c???en est une autre d???écrire des programmes utiles avec. 

Le problème avec Sed, ce n'est pas l'utilité --- plutôt la lisibilité :/

[...]

>   Gestion des [] imbriqués ? :oP

Si la profondeur reste raisonnable et limitée, c'est possible, mais vite
lourd : la récursivité n'est certes pas un point fort de Sed.

Dans le problème  posé, il serait sans doute  plus expéditif de corriger
les quelques mots erronés qui peuvent apparaître, s'ils ne sont pas trop
nombreux :

~ $ echo 'Perm ission crit ical perm ission' |
> ]sed -e 's/\(perm\)[[:space:]]\+ission/\1ission/ig 
> ]s/\(crit\)[[:space:]]\+ical/\1ical/ig'
Permission critical permission

> >  3/ Recoller les morceaux... (en exercice :)
> 
>   Ah, ah, la technique habituelle des profs quand ça devient
> scabreux : « en exercice », « c???est trivial »???

Ici, ça n'a rien de très scabreux.

>   Je préfère le « vous verrez ça l???année prochaine » :o)

Il y a un précédent bien connu, où la marge n'était pas assez grande :)

Réponse(s) vendredi prochain.
-- 
Jacques L'helgoualc'h


Reply to: