Découpage de texte
#2
Voila une version plus allégée, avec un algo différent, sans utiliser de liste:

TCL
proc split_line {texte maxChars} {
    set strLength [string length $texte]
    set numLines [expr {$strLength / $maxChars}]
    set modulo [expr {$strLength % $maxChars}]
    for {set i 0; set j 0} {$i < $numLines} {incr i; incr j $maxChars} {
        puts [string range $texte $j [expr {$j + ($maxChars-1)}]]
    }
    if {$modulo != 0} {
        puts [string range $texte $j end]
    }
}



Donc en fait $modulo contient le reste de la division, donc en gros, si j'ai une phrase de 15 caractères, que je veux divisé en 3 lignes de 5 (maxChars = 5), le module est 0, mais si je veux le divisé par 4 caractères, la division 15/4 retourne 3, et il reste 3.

Donc si le modulo est égal à 0, c'est qu'on a nombre de ligne tout rond, sinon c'est qu'il reste des caractères à envoyés à la fin.
Répondre Avertir


Messages dans ce sujet
Découpage de texte - par MenzAgitat - 09/08/2008, 22:47
RE: Découpage de texte - par Merwin - 10/08/2008, 00:59
RE: Découpage de texte - par mika23 - 01/02/2010, 16:31
RE: Découpage de texte - par Merwin - 01/02/2010, 17:43
RE: Découpage de texte - par MenzAgitat - 02/02/2010, 14:03
RE: Découpage de texte - par CrazyCat - 04/02/2010, 22:29
RE: Découpage de texte - par MenzAgitat - 05/02/2010, 00:43

Atteindre :


Utilisateur(s) parcourant ce sujet : 1 visiteur(s)
Tchat 100% gratuit -Discutez en toute liberté