[Perl] Raku

Marc Chantreux eiro at phear.org
Lun 28 Mar 23:33:08 CEST 2022


salut à tous,

> Tu peux simplement affecter l'attribut nl-in d'un descripteur de fichier
> Example

si tu as plusieurs fichiers à traiter, tu peux utiliser l'objet qui
permet de faire l'équivalent de <ARGV> (ou <>) grace à IO::CatHandle.

le problème c'est que nl-in prend une chaine, ce qui ne permet pas un
nombre arbitraire de \n comme $" pouvait le faire. A ma connaissance,
donc, tu vas devoir:

* soit nettoyer les paragraphes à la main (virer \n en début de paragraphe
quand le nombre de \n est impair)

my $i = 0;
IO::CatHandle.new( < A B >, nl-in => "\n\n" ).lines.map: {
	my $text = S/^\n//;
	say "{++$i} {$text.indent(3)}"
}

* soit slurper le contenu (adieu lazyness!) et spliter

raku -e '
	my $i = 0;
	slurp.split(/ \n ** 2..* /).map: {
		say "{++$i} {$_.indent(3)}"
	}
' A B

ca vaudrait le coup de poser la question sur

	perl6 users <perl6-users at perl.org>

'soir à tous
marc


Plus d'informations sur la liste de diffusion Perl