Tekst rechts uilijnen in perl

Pagina: 1
Acties:

  • TrailBlazer
  • Registratie: Oktober 2000
  • Laatst online: 14-09 21:15

TrailBlazer

Karnemelk FTW

Topicstarter
Hoi Ik heb een string in perl. Met behulp van Term::Cap positioneer ik de cursor. De tekst die ik wil neerzetten is een getal wat varieert in grootte. Hoe krijg ik het voor elkaar dat de getallen netjes rechtsuitgelijnd onderelkaar komen.
code:
1
2
3
4
5
6
7
8
9
10
11
12
==================================================
| DLCI | BytesToIf | Increase  |
| 157   3084736192  105552          
| 180   1110541996  12621            
| 202   102994573   0                
| 297   2459780     0                
| 454   433868663   310            
| 486   2425248     0                
| 495   2451240     0                
| 501   264430900   1736              
| 533   107666915   0                
==================================================

Ik zat zelf te denken aan iets met sprintf maar ik heb hier geen ervaring mee. Pls help

  • bigtree
  • Registratie: Oktober 2000
  • Laatst online: 07-07 11:51
Op woensdag 10 oktober 2001 10:31 schreef TrailBlazer het volgende:
Hoi Ik heb een string in perl. Met behulp van Term::Cap positioneer ik de cursor. De tekst die ik wil neerzetten is een getal wat varieert in grootte. Hoe krijg ik het voor elkaar dat de getallen netjes rechtsuitgelijnd onderelkaar komen.
code:
1
2
3
4
5
6
7
8
9
10
11
12
==================================================
| DLCI | BytesToIf | Increase  |
| 157   3084736192  105552          
| 180   1110541996  12621            
| 202   102994573   0                
| 297   2459780     0                
| 454   433868663   310            
| 486   2425248     0                
| 495   2451240     0                
| 501   264430900   1736              
| 533   107666915   0                
==================================================

Ik zat zelf te denken aan iets met sprintf maar ik heb hier geen ervaring mee. Pls help
Ik weet niks van Perl, maar als je een functie hebt om de lengte van een string (het getal moet dus eerst naar een string omgezet worden) op te vragen, dan zet je daarvoor een aantal spaties.

Ervan uitgaand dat je strings (of getallen) niet langer zijn dan 10 posities, krijg je de volgende pseudo-code:
output wordt ((10 - (lengte van je string)) * " ") + string

Maar als je een functie hebt in perl om een string te formatten, zou ik daar eerst naar zoeken.

Toodles

Lekker woordenboek, als je niet eens weet dat vandalen met een 'n' is.


  • Grum
  • Registratie: Juni 2001
  • Niet online
format / length / substr gebruiken :)

  • TrailBlazer
  • Registratie: Oktober 2000
  • Laatst online: 14-09 21:15

TrailBlazer

Karnemelk FTW

Topicstarter
kun je iets duidelijker zij zijn ik bergrijp er geen flikker van

  • TrailBlazer
  • Registratie: Oktober 2000
  • Laatst online: 14-09 21:15

TrailBlazer

Karnemelk FTW

Topicstarter
Op woensdag 10 oktober 2001 10:52 schreef bigtree het volgende:

[..]

Ik weet niks van Perl, maar als je een functie hebt om de lengte van een string (het getal moet dus eerst naar een string omgezet worden)
Dat hoeft in ieder geval niet. Perl doet dat allemaal achter de schermen o perl is zo makkelijk

  • Ees
  • Registratie: Juli 2001
  • Laatst online: 29-07 15:00

Ees

Doe eens:

% perl -e 'printf "%5d\n", $_ for (123,4,5678)'
% perldoc -f printf
% perldoc -f sprintf

Ik neem aan dat je er dan verder zelf wel uitkomt...

Verwijderd

TrailBlazer: Hoe maak ik mooie rapportjes in Perl?
http://www.perldoc.com/perl5.6.1/pod/perlform.html
Pagina: 1