Je veux sortir des chaînes en huit colonnes, mais je veux garder l'espacement identique. Je ne veux pas le faire dans HTML, mais je ne sais pas comment le faire normalement. Exemple:
Something Something Something Something Something Else Else Else Else Else Another Another Another Another Another
4 Réponses :
Changer "11" dans le gabarit à une valeur dont vous avez besoin. p> p> printf code>
C'est parfait merci, quand j'ai googlé, j'ai trouvé toutes ces méthodes compliquées.
Comme l'éludé, lorsque les choses semblent être compliquées, cela signifie généralement que vous avez plus de contrôle / options. Printf Code> est très puissant, mais envisagez
format code> si vous allez imprimer des rapports formatés.
Format CODE> Donne la possibilité d'ajouter des en-têtes / des pieds de page, ce qui facilite la modification des fichiers.
Je n'ai pas besoin d'obtenir technique avec des en-têtes ou quoi que ce soit. Il suffit d'avoir des choses émises dans une belle vue sur une feuille
Ensuite, printf code> est probablement ce qui est nécessaire. Si vos données sont dans un tableau, consultez ma réponse sur la manière de transmettre les valeurs de la matrice en tant que paramètres - il suffit de passer la liste complète de la matrice, plutôt que de spécifier chaque noeud indépendamment.
Vous pouvez utiliser Perl's format code>
.
C'est probablement la méthode "compliquée" que vous ne comprenez pas, probablement parce que cela vous donne de nombreuses options (à gauche | Centre | Justification droite / rembourrage, cadavre de 0, etc.).
EXEMPLE DE PERLDOC : P>
#!/usr/bin/perl -w use strict; sub main{ my @arr = (['something1','something2','something3','something4','something5','something6','something7','something8'] ,['else1' ,'else2' ,'else3' ,'else4' ,'else5' ,'else6' ,'else7' ,'else8' ] ,['another1' ,'another2' ,'another3' ,'another4' ,'another5' ,'another6' ,'another7' ,'another8' ] ); for my $row (@arr) { format STDOUT = @<<<<<<<<<<<< @<<<<<<<<<<<< @<<<<<<<<<<<< @<<<<<<<<<<<< @<<<<<<<<<<<< @<<<<<<<<<<<< @<<<<<<<<<<<< @<<<<<<<<<<<< @$row . write; } } main();
Je regarderais le formatage, mais je le ferais en utilisant Perl 6's (Now Raku) Form.pm, que vous pouvez obtenir comme Perl6: : Formulaire pour Perl 5. P>
La raison en est que le format intégré a un certain nombre d'inconvénients, tels que le format statiquement défini de manière statique au moment de la compilation (c.-à-d. La construire de manière dynamique peut être douloureuse et nécessite généralement une liste de chaînes), ainsi que toute une liste complète de autres lacunes, telles que l'absence de types de champs utiles (et vous ne pouvez pas les étendre à Perl 5). P>
La quantité de lignes changera quotidiennement mais le numéro de colonne restera toujours le même. Code> Pas besoin de construire de manière dynamique ou d'utiliser Eval.
Voici un exemple en direct de Perl6 :: Formulaire :
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24