Discussion:
Écrire un script enchaînant plusieurs substitutions successives
(trop ancien pour répondre)
Olivier Miakinen
2018-10-03 00:41:58 UTC
Permalink
Bonjour,

Bien que ne connaissant pas Perl, j'ai l'impression que ce langage
doit être le plus approprié pour ce que je veux faire. En gros,
j'ai des fichiers contenant des textes écrits en tchèque (avec
majuscules et minuscules) que je voudrais convertir en API
(alphabet phonétique international). Du coup, j'aimerais pouvoir
écrire un script à lancer depuis un shell de type bash, que je
puisse utiliser de la façon suivante :
le_script fichier_source > fichier_destination

Par exemple, si le_script contient sous une forme ou une autre
les commandes de conversion suivante :
------------------------
s/ž/ʒ/gi
s/é/e:/gi
s/e/ɛ/gi
------------------------

et si fichier_source a le contenu suivant :
------------------------
Žitné pole, žitné pole,
jak to zraje vesele!
------------------------

alors j'obtiendrai ceci dans fichier_destination :
------------------------
ʒitnɛ: polɛ, ʒitnɛ: polɛ,
jak to zrajɛ vɛsɛlɛ!
------------------------

Remarquer d'une part que le Ž et le ž ont tous deux été
remplacés par ʒ ; d'autre part que les é sont d'abord
devenus e: (s/é/e:/) avant de devenir ɛ: (s/e/ɛ/).

Cordialement,
--
Olivier Miakinen
Marc Espie
2018-10-04 12:52:43 UTC
Permalink
Post by Olivier Miakinen
Bonjour,
Bien que ne connaissant pas Perl, j'ai l'impression que ce langage
doit être le plus approprié pour ce que je veux faire. En gros,
j'ai des fichiers contenant des textes écrits en tchÚque (avec
majuscules et minuscules) que je voudrais convertir en API
(alphabet phonétique international). Du coup, j'aimerais pouvoir
écrire un script à lancer depuis un shell de type bash, que je
le_script fichier_source > fichier_destination
Par exemple, si le_script contient sous une forme ou une autre
------------------------
s/ÅŸ/ʒ/gi
s/é/e:/gi
s/e/ɛ/gi
------------------------
------------------------
Ŝitné pole, şitné pole,
jak to zraje vesele!
------------------------
------------------------
ʒitnɛ: polɛ, ʒitnɛ: polɛ,
jak to zrajɛ vɛsɛlɛ!
------------------------
Remarquer d'une part que le Ŝ et le ş ont tous deux été
remplacés par ʒ ; d'autre part que les é sont d'abord
devenus e: (s/é/e:/) avant de devenir ɛ: (s/e/ɛ/).
Cordialement,
Et c'est quoi la question ?

Oui c'est approprie.

T'as essentiellement juste a ecrire tes substitutions dans ton script
man perlrun
te donnera les bonnes options pour que ca s'applique a tout ce que tu
veux,

e.g.,

perl -pi.bak -e 's/E/e/g;'

te convertit tous tes E majuscules en minuscules par exemple.

Selon ton encodage, ca peut etre un peu plus funky.

man perlunifaq

pour en savoir plus
Olivier Miakinen
2018-10-04 20:04:37 UTC
Permalink
Bonjour Marc,
Post by Marc Espie
[...] être le plus approprié [...]
------------------------
s/ÅŸ/ʒ/gi
s/é/e:/gi
s/e/ɛ/gi
------------------------
[...]
Oh ! ;-)
Post by Marc Espie
Et c'est quoi la question ?
C'est vrai que si ton nouvelleur ne sait pas lire l'UTF-8, tu dois avoir
du mal à comprendre une question dans laquelle j'ai mis des caractères
tchèques et des caractères de l'alphabet phonétique international !

Ma question était : qu'écrire dans un script shell (ou peut-être un
script perl avec le bon « shebang » au début) pour enchaîner plusieurs
substitutions sur tout le contenu d'un fichier, et envoyer le résultat
dans un autre fichier.
Post by Marc Espie
Oui c'est approprie.
T'as essentiellement juste a ecrire tes substitutions dans ton script
man perlrun
te donnera les bonnes options pour que ca s'applique a tout ce que tu
veux,
Je n'ai pas ce man. Bien sûr j'ai fait « perl --help » et « man perl »,
qui m'ont donné quelques infos, et j'ai aussi essayé la commande perldoc
mais je ne l'ai pas non plus et je n'avais pas envie de l'installer
avant de savoir si je vais vraiment utiliser perl.

Sur le web j'ai trouvé des exemples avec perl -pe mais aucun exemple
avec plusieurs substitutions de suite. Du coup je ne savais pas trop
si je pouvais mettre plusieurs -pe de suite, un seul -p suivi de
plusieurs -e, ou encore un seul -pe suivi de plusieurs commandes
de substitution non toutes précédées de -e ou -pe.
Post by Marc Espie
e.g.,
perl -pi.bak -e 's/E/e/g;'
Mais c'est toujours une seule substitution, or j'en ai une bonne
trentaine de suite à faire à chaque fichier. De plus, d'après le
« perl --help », l'option i ne convient pas à ce que j'ai décrit
(mais que tu as sans doute eu du mal à lire en UTF-8), à savoir
que je ne veux pas modifier le fichier source.
Post by Marc Espie
[...]
Finalement, j'ai découvert entretemps la commande :source dans l'éditeur
vim, et cette commande me va très bien. J'ai même pu commenter mes
substitutions. Pour ceux que cela pourrait intéresser, voici le fichier
convert.vim que j'exécute au moyen de « :source convert.vim » :
=======================================================================
" Toutes les lettres tchèques
" aábcčdďeéěfghiíjklmnňoópqrřsštťuúůvwxyýzž

" Voyelles
" aáeéěiíoóuúůyý

" Consonnes et semi-voyelles
" bcčdďfghjklmnňpqrřsštťvwxzž

" On passe tout en minuscules
%s/.*/\L&/

" consonne + (l ou r) + autre chose qu'une voyelle -> on ajoute un schwa ə
%s/\([bcčdďfghjklmnňpqrřsštťvwxzž]\)\([lr]\)\([^aáeéěiíoóuúůyý]\|$\)/\1ə\2\3/g

" ž en finale donne ʃ, sinon donne ʒ
%s/ž\([^aábcčdďeéěfghiíjklmnňoópqrřsštťuúůvwxyýzž]\|$\)/ʃ\1/g
%s/ž/ʒ/g

" autres substitutions - voyelles
%s/á/aː/g
%s/e/ɛ/g
%s/é/ɛː/g
%s/ě/jɛ/g
%s/[iy]/ɪ/g
%s/[íý]/iː/g
%s/o/ɔ/g
%s/ó/ɔː/g
%s/u/ʊ/g
%s/[úů]/uː/g

" autres substitutions - consonnes
%s/x/ks/g
%s/ch/x/g
%s/c/ts/g
%s/č/tʃ/g
%s/ď/dj/g
%s/h/ɦ/g
%s/ň/ɲ/g
%s/q/kv/g
%s/ř/rʒ/g
%s/š/ʃ/g
%s/ť/tj/g
%s/w/v/g
=======================================================================

Bon, ce n'est pas encore aujourd'hui que j'aurai la motivation de me
mettre à Perl. Désolé.
--
Olivier Miakinen
Marc Espie
2018-10-08 19:07:21 UTC
Permalink
Je n'ai pas ce man. Bien sûr j'ai fait « perl --help » et « man perl »,
qui m'ont donné quelques infos, et j'ai aussi essayé la commande perldoc
mais je ne l'ai pas non plus et je n'avais pas envie de l'installer
avant de savoir si je vais vraiment utiliser perl.
Bah, t'aurais insiste un poil, je suis bien certain que toute cette doc se
trouve sur le net..

Genre:

https://perldoc.perl.org/perlrun.html

C'est pas comme si j'avais eu a chercher.

Je ne sais pas sur quoi tu bosses, mais il doit bien y avoir les packages idoines
complets pour perl, hein, doc y comprise...




(desole pour l'utf8, mais je ne vais pas abandonner mon vieux trn des familles).


Pour le reste, oui bien sur que tu peux mettre plusieurs -e.

Et perlrun te documente exactement ce que fait -i.bak

donc du coup, reecrire la meme chose a la main c'est assez trivial...
et du coup faire des substitutions vers d'autres fichiers.


Pareil pour le cote unicode, hein.

Bon, t'as trouve une solution "manuelle" dans vim, pourquoi pas ?
Olivier Miakinen
2018-10-08 20:54:23 UTC
Permalink
Post by Marc Espie
Je n'ai pas ce man. Bien sûr j'ai fait « perl --help » et « man perl »,
qui m'ont donné quelques infos, et j'ai aussi essayé la commande perldoc
mais je ne l'ai pas non plus et je n'avais pas envie de l'installer
avant de savoir si je vais vraiment utiliser perl.
Bah, t'aurais insiste un poil, je suis bien certain que toute cette doc se
trouve sur le net..
https://perldoc.perl.org/perlrun.html
C'est pas comme si j'avais eu a chercher.
Ah, par le fait je l'avais trouvée, et lue... mais sans y trouver ce
que je cherchais.

Est-ce parce que je suis trop nul en anglais ? C'est possible.
Peut-être aussi que c'est parce qu'il y a trop d'infos qui n'ont rien
à voir avec ce que je cherchais. Ou alors c'est parce que ce que je
cherchais ne s'y trouve tout simplement pas.
Post by Marc Espie
Je ne sais pas sur quoi tu bosses, mais il doit bien y avoir les packages idoines
complets pour perl, hein, doc y comprise...
En l'occurrence je bosse sur la saisie d'une partition de musique avec
paroles en tchèque, que je voudrais traduire en phonétique. Autant dire
que je n'ai pas absolument *besoin* d'apprendre le Perl pour ça, et que
donc j'aurais volontiers utilisé une recette de cuisine que quelqu'un
aurait pu me donner (ou que j'aurais trouvée sur le net), même sans
tout comprendre.
Post by Marc Espie
Pour le reste, oui bien sur que tu peux mettre plusieurs -e.
J'ai essayé, sans succès.

perl -p -e 's/foo/bar/g'
-> ok

perl -p -e 's/foo/bar/g' -e 's/qux/baz/g'
-> syntax error at -e line 2, near "s/qux/baz/g"
Post by Marc Espie
Et perlrun te documente exactement ce que fait -i.bak
Et il confirme ce que je t'ai déjà répondu, à savoir que je ne dois
surtout pas l'utiliser.
Post by Marc Espie
[...]
Bon, t'as trouve une solution "manuelle" dans vim, pourquoi pas ?
Et j'en suis heureux, puisque je ne sais toujours pas comment le faire
avec Perl.

*********************************************************************

Bon. Je suis un imbécile, c'est entendu. Je ne sais pas lire la doc
de Perl, c'est évident. Mais toi qui sais, plutôt que de m'engueuler,
est-ce que tu pourrais me donner la syntaxe pour un programme nommé
par exemple convert.pl, de telle façon que si je fais :
echo 'truc foo bidule foo chose qux et foo machin' | convert.pl
cela me réponde :
truc bar bidule bar chose baz et bar machin
?
--
Olivier Miakinen
Francois Lafont
2018-10-08 21:22:00 UTC
Permalink
Bonjour,
Post by Olivier Miakinen
est-ce que tu pourrais me donner la syntaxe pour un programme nommé
echo 'truc foo bidule foo chose qux et foo machin' | convert.pl
truc bar bidule bar chose baz et bar machin
?
Attention, c'est une proposition qui répond à la question mais sache je
suis vraiment nul en Perl. Alors peut-être que ce n'est pas la bonne
façon de faire (auquel cas, je suis intéressé de connaître d'autres méthodes) :

------------------------------------------------------
~$ cat /tmp/convert.pl
#!/usr/bin/env perl

use strict;
use warnings;
use 5.026;

while (<>) {
$_ =~ s/a/X/g;
$_ =~ s/e/Y/g;
print $_;
}

~$ echo 'Salut tout le monde, ça va bien ?' | /tmp/convert.pl
SXlut tout lY mondY, çX vX biYn ?
------------------------------------------------------

Testé sous Ubuntu 18.04 avec Perl version 5.26.1. J'espère que ça t'aidera
à démarrer.

À+
--
François Lafont
Olivier Miakinen
2018-10-08 22:16:30 UTC
Permalink
Bonjour François,
Post by Francois Lafont
Attention, c'est une proposition qui répond à la question mais sache je
suis vraiment nul en Perl. Alors peut-être que ce n'est pas la bonne
[...]
Merci merci merci !

Grâce à ton exemple, j'ai réussi à faire ce que je voulais.

Pas immédiatement, car il a fallu que je fasse accepter à mon programme
l'UTF-8 dans le script, en sortie et en entrée (respectivement use utf8;
puis binmode avec STDOUT et STDIN), mais ça marche ! Voici donc mon
tout premier programme Perl :

-----------------------------------------------------------------------
#!/usr/bin/env perl

use strict;
use warnings;
use 5.026;
use utf8; # UTF-8 dans le programme

=begin alphabet

Toutes les lettres tchèques
aábcčdďeéěfghiíjklmnňoópqrřsštťuúůvwxyýzž

Voyelles
aáeéěiíoóuúůyý

Consonnes et semi-voyelles
bcčdďfghjklmnňpqrřsštťvwxzž

=cut

binmode(STDOUT, ":utf8"); # sortie en UTF-8
binmode(STDIN, ":encoding(utf8)"); # s'assure que l'entrée est en UTF-8

while (<>) {
# On passe tout en minuscules
$_ =~ s/(.*)/\L$1/;

# consonne + (l ou r) + autre chose qu'une voyelle -> on ajoute un
schwa ə
$_ =~
s/([bcčdďfghjklmnňpqrřsštťvwxzž])([lr])([^aáeéěiíoóuúůyý]|$)/$1ə$2$3/g;

# ž en finale donne ʃ, sinon donne ʒ
$_ =~ s/ž([^aábcčdďeéěfghiíjklmnňoópqrřsštťuúůvwxyýzž]|$)/ʃ$1/g;
$_ =~ s/ž/ʒ/g;

# autres substitutions - voyelles
$_ =~ s/á/aː/g;
$_ =~ s/e/ɛ/g;
$_ =~ s/é/ɛː/g;
$_ =~ s/ě/jɛ/g;
$_ =~ s/[iy]/ɪ/g;
$_ =~ s/[íý]/iː/g;
$_ =~ s/o/ɔ/g;
$_ =~ s/ó/ɔː/g;
$_ =~ s/u/ʊ/g;
$_ =~ s/[úů]/uː/g;

# autres substitutions - consonnes
$_ =~ s/x/ks/g;
$_ =~ s/ch/x/g;
$_ =~ s/c/ts/g;
$_ =~ s/č/tʃ/g;
$_ =~ s/ď/dj/g;
$_ =~ s/h/ɦ/g;
$_ =~ s/ň/ɲ/g;
$_ =~ s/q/kv/g;
$_ =~ s/ř/rʒ/g;
$_ =~ s/š/ʃ/g;
$_ =~ s/ť/tj/g;
$_ =~ s/w/v/g;

print $_;
}
-----------------------------------------------------------------------

À partir de là je vais pouvoir simplifier un peu l'écriture en utilisant
les assertions dans les regexp, et des variables pour les voyelles et
les consonnes. En tout cas, merci de m'avoir mis le pied à l'étrier !
--
Olivier Miakinen
Olivier Miakinen
2018-10-08 23:07:20 UTC
Permalink
Post by Olivier Miakinen
[...]
À partir de là je vais pouvoir simplifier un peu l'écriture en utilisant
les assertions dans les regexp, et des variables pour les voyelles et
les consonnes.
Eh bien c'est fait. J'ai même simplifié plus que ce que je ne
l'imaginais, en supprimant tous les « $_ » sauf un, et en
n'ayant plus aucun $1 dans mes substitutions.

========================================================================
#!/usr/bin/env perl

use strict;
use warnings;
use 5.026;

use utf8; # UTF-8 dans le programme
binmode(STDOUT, ":utf8"); # sortie en UTF-8
binmode(STDIN, ":encoding(utf8)"); # s'assure que l'entrée est en UTF-8

# Toutes les lettres tchèques
my $lettre = "[aábcčdďeéěfghiíjklmnňoópqrřsštťuúůvwxyýzž]";

# Voyelles
my $voyelle = "[aáeéěiíoóuúůyý]";

# Consonnes et semi-voyelles
my $consonne = "[bcčdďfghjklmnňpqrřsštťvwxzž]";

while (<>) {
# On passe tout en minuscules
$_ = lc();

# l ou r précédé d'une consonne et non suivi d'une
# voyelle -> on ajoute un schwa ə
s/(?<=$consonne)(?=[lr](?!$voyelle))/ə/g;

# ž en finale donne ʃ, sinon donne ʒ
s/ž(?!$lettre)/ʃ/g;
s/ž/ʒ/g;

# autres substitutions - voyelles
s/á/aː/g;
s/e/ɛ/g;
s/é/ɛː/g;
s/ě/jɛ/g;
s/[iy]/ɪ/g;
s/[íý]/iː/g;
s/o/ɔ/g;
s/ó/ɔː/g;
s/u/ʊ/g;
s/[úů]/uː/g;

# autres substitutions - consonnes
s/x/ks/g;
s/ch/x/g;
s/c/ts/g;
s/č/tʃ/g;
s/ď/dj/g;
s/h/ɦ/g;
s/ň/ɲ/g;
s/q/kv/g;
s/ř/rʒ/g;
s/š/ʃ/g;
s/ť/tj/g;
s/w/v/g;

print;
}
========================================================================

Encore merci !
--
Olivier Miakinen
Benoit Izac
2018-10-09 05:33:10 UTC
Permalink
Bonjour,

Le 08/10/2018 à 22:54, Olivier Miakinen a écrit dans le message
Post by Olivier Miakinen
perl -p -e 's/foo/bar/g'
-> ok
perl -p -e 's/foo/bar/g' -e 's/qux/baz/g'
-> syntax error at -e line 2, near "s/qux/baz/g"
Il manque un « ; » pour séparer les deux instructions. C'est la même
chose que :
perl -p -e 's/foo/bar/g
s/qux/baz/g'

Donc :
perl -p -e 's/foo/bar/g;' -e 's/qux/baz/g'
ou plus simplement :
perl -p -e 's/foo/bar/g; s/qux/baz/g'
--
Benoit Izac
Olivier Miakinen
2018-10-09 13:22:18 UTC
Permalink
Post by Olivier Miakinen
perl -p -e 's/foo/bar/g' -e 's/qux/baz/g'
-> syntax error at -e line 2, near "s/qux/baz/g"
Il manque un « ; » pour séparer les deux instructions. C'est la même
perl -p -e 's/foo/bar/g
s/qux/baz/g'
perl -p -e 's/foo/bar/g;' -e 's/qux/baz/g'
C'est pour ça que je n'y étais pas arrivé. Pourtant j'avais vraiment
cherché assez longtemps avant de venir poser ma question ici, et je
n'avais pas trouvé d'exemple avec deux -e de suite.

Donc j'aurais pu écrire :

perl -p \
...
-e 's/á/aː/g;' \
-e 's/e/ɛ/g;' \
-e 's/é/ɛː/g;' \
-e 's/ě/jɛ/g;' \
-e 's/[iy]/ɪ/g;' \
-e 's/[íý]/iː/g;' \
-e 's/o/ɔ/g;' \
-e 's/ó/ɔː/g;' \
-e 's/u/ʊ/g;' \
-e 's/[úů]/uː/g;' \
...
perl -p -e 's/foo/bar/g; s/qux/baz/g'
D'accord. Mais quitte à avoir tout le programme en une seule fois,
je préfère la solution de François Lafont qui m'a vraiment bien
aidé.

Cela dit, merci pour l'info concernant les points-virgules. Ce qui est
rigolo, c'est que les trois écritures suivantes fonctionnent :
perl -p -e 's/foo/bar/g;' -e 's/qux/baz/g'
perl -p -e 's/foo/bar/g' -e ';s/qux/baz/g'
perl -p -e 's/foo/bar/g' -e ';' -e 's/qux/baz/g'
mais surtout que l'écriture suivante ne fait pas d'erreur, même si
elle semble ajouter un saut de ligne entre deux expressions.
perl -p -e 's/foo/b' -e 'ar/g;s/q' -e '?ux/baz/g'

Résultat sur la chaîne XXXfooYYYquxZZZ de la dernière expression :
XXXb
arYYYbazZZZ
--
Olivier Miakinen
Olivier Miakinen
2018-10-09 13:42:14 UTC
Permalink
Post by Olivier Miakinen
Il manque un « ; » pour séparer les deux instructions. C'est la même
perl -p -e 's/foo/bar/g
s/qux/baz/g'
perl -p -e 's/foo/bar/g;' -e 's/qux/baz/g'
C'est pour ça que je n'y étais pas arrivé. Pourtant j'avais vraiment
cherché assez longtemps avant de venir poser ma question ici, et je
n'avais pas trouvé d'exemple avec deux -e de suite.
Et bien évidemment, maintenant que j'ai la réponse, je sais trouver
des exemples dur le net qui donnent cette même réponse. Par exemple
ici :
<https://stackoverflow.com/questions/10424113/perl-command-line-search-and-replace-with-multiple-expressions>

:-)
--
Olivier Miakinen
Olivier Miakinen
2018-10-09 13:43:21 UTC
Permalink
[Supersedes]
Post by Olivier Miakinen
Il manque un « ; » pour séparer les deux instructions. C'est la même
perl -p -e 's/foo/bar/g
s/qux/baz/g'
perl -p -e 's/foo/bar/g;' -e 's/qux/baz/g'
C'est pour ça que je n'y étais pas arrivé. Pourtant j'avais vraiment
cherché assez longtemps avant de venir poser ma question ici, et je
n'avais pas trouvé d'exemple avec deux -e de suite.
Et bien évidemment, maintenant que j'ai la réponse, je sais trouver
des exemples sur le net qui donnent cette même réponse. Par exemple
ici :
<https://stackoverflow.com/questions/10424113/perl-command-line-search-and-replace-with-multiple-expressions>

:-)
--
Olivier Miakinen
Benoit Izac
2018-10-09 18:58:47 UTC
Permalink
Bonjour,

Le 09/10/2018 à 15:22, Olivier Miakinen a écrit dans le message
Post by Olivier Miakinen
mais surtout que l'écriture suivante ne fait pas d'erreur, même si
elle semble ajouter un saut de ligne entre deux expressions.
perl -p -e 's/foo/b' -e 'ar/g;s/q' -e '?ux/baz/g'
XXXb
arYYYbazZZZ
C'est normal puisque c'est équivalent à :
perl -p -e 's/foo/b
ar/g;s/q
?ux/baz/g'
--
Benoit Izac
Marc Espie
2018-10-09 10:25:26 UTC
Permalink
Post by Olivier Miakinen
perl -p -e 's/foo/bar/g' -e 's/qux/baz/g'
-> syntax error at -e line 2, near "s/qux/baz/g"
Si t'en mets plusieurs, il faut les ; de fin.
Post by Olivier Miakinen
perl -p -e 's/foo/bar/g'
=>
while (<>) {
s/foo/bar/g
}

(ca passe parce qu'accolade)

Donc: perl -p -e 's/foo/bar/g;' -e 's/qux/baz/g;'
Post by Olivier Miakinen
Post by Marc Espie
Et perlrun te documente exactement ce que fait -i.bak
Et il confirme ce que je t'ai déjà répondu, à savoir que je ne dois
surtout pas l'utiliser.
Mais aussi te montre ce pour quoi c'est un raccourci, donc te donne
tout ce qu'il faut pour ecrire le code correspondant a ton cas
d'utilisation.
Post by Olivier Miakinen
Post by Marc Espie
[...]
Bon, t'as trouve une solution "manuelle" dans vim, pourquoi pas ?
Et j'en suis heureux, puisque je ne sais toujours pas comment le faire
avec Perl.
*********************************************************************
Bon. Je suis un imbécile, c'est entendu. Je ne sais pas lire la doc
de Perl, c'est évident. Mais toi qui sais, plutôt que de m'engueuler,
est-ce que tu pourrais me donner la syntaxe pour un programme nommé
echo 'truc foo bidule foo chose qux et foo machin' | convert.pl
truc bar bidule bar chose baz et bar machin
?
Confere supra
Olivier Miakinen
2018-10-09 13:24:45 UTC
Permalink
Post by Marc Espie
Post by Olivier Miakinen
perl -p -e 's/foo/bar/g' -e 's/qux/baz/g'
-> syntax error at -e line 2, near "s/qux/baz/g"
Si t'en mets plusieurs, il faut les ; de fin.
Ok, c'est ça que je ne savais pas. Voir aussi ma réponse à Benoit
Izac sur le truc amusant que j'ai découvert à ce propos.
Post by Marc Espie
[...]
Confere supra
Merci de ton aide.

Cordialement,
--
Olivier Miakinen
Olivier Miakinen
2018-10-09 13:30:50 UTC
Permalink
Post by Marc Espie
perl -pi.bak -e 's/E/e/g;'
En relisant ton article de la semaine dernière, je vois que
tu avais mis un point-virgule dans cet exemple.

Il est juste dommage que tu n'aies pas écrit dès ce moment :
perl -pi.bak -e 's/E/e/g;' -e 's/A/a/g;'

En effet ça nous aurait évité une discussion houleuse puisque
je serais parti de cet exemple pour fabriquer le mien petit
à petit (de la même manière que ce que j'ai fait à partir
de l'exemple de François).

Mais bon, tu ne pouvais pas savoir que j'en étais à un tel
degré zéro de connaissance de Perl.


Sans rancune ?
--
Olivier Miakinen
Marc Espie
2018-10-11 19:23:52 UTC
Permalink
Post by Olivier Miakinen
Mais bon, tu ne pouvais pas savoir que j'en étais à un tel
degré zéro de connaissance de Perl.
Sans rancune ?
Bah oui, bien sur sans rancune. Ca m'a plus amuse qu'autre chose.
Loading...