[Perl] Ajouter en fin de ligne d'une variable

Résolu
KuKrApOk59 Messages postés 444 Date d'inscription   Statut Membre Dernière intervention   -  
KuKrApOk59 Messages postés 444 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,

J'ai dans un script, une variable $texte
my $texte = <<EOF
ligne1
lige2
ligne3
...
EOF
;

Je souhaiterai, à la fin de chaque ligne, y ajouter soit un \n, soit la balise <br>
Car ce texte a pour vocation, d'être soit enregistré dans un fichier, d'où le \n, ou consulté sur une page HTML, d'où le <br>

J'ai essayé de chercher du coté d'un open(), mais sans succès
(J'ai probablement du mal chercher, car je pense que la solution doit être de ce côté)

Je vous remercie d'avance d'éclairer ma lanterne

3 réponses

  1. elbeho
     
    Salut,

    my $fin_de_ligne = "\n"; # ou "<br>
    
    my $texte = "
    ligne 1
    ligne 2
    ligne 3
    ...
    $fin_de_ligne
    ";
    


    Ciao
    0
  2. lami20j Messages postés 21506 Date d'inscription   Statut Modérateur, Contributeur sécurité Dernière intervention   3 571
     
    Salut,

    le \n existe déjà dans la variable

    lami20j@debian:~/trash$ cat texte.pl
    #!/usr/bin/perl
    use strict;use warnings;
    
    open TEXT ,">texte.txt"  or die "E/S : $!\n";
    open HTML ,">texte.html" or die "E/S : $!\n";
    
    my $texte = <<EOF
    ligne1
    lige2
    ligne3
    ...
    EOF
    ;
    
    print TEXT "$texte";
    
    (my $html = $texte) =~s/\n/<br>/g;
    print HTML "$html";
    __END__
    lami20j@debian:~/trash$ perl texte.pl
    lami20j@debian:~/trash$ cat texte.txt
    ligne1
    lige2
    ligne3
    ...
    lami20j@debian:~/trash$ cat texte.html
    ligne1<br>lige2<br>ligne3<br>...<br>

    0
  3. KuKrApOk59 Messages postés 444 Date d'inscription   Statut Membre Dernière intervention   84
     
    Merci beaucoup pour le coup de main !
    0