Documentation | Méthode | Chaine
| Retour
txt_CutOut| Syntaxe : txt_CutOut (ptrTexte; {Sep}; {opt}) > Résultat |
| Paramètre | Typage | | Description | |
| ptrTexte | Pointeur | > | pointeur sur la chaine de caractère à traiter | |
| Sep | Texte | > | optionnel, séparateur | |
| Opt | Texte | > | optionnel, modifie le comportement standard | |
| Résultat | Texte | < | résultat de la découpe | |
| Cette méthode découpe le texte qui lui est passé sous forme de pointeur dans ptrTexte et renvois la partie coupée dans Résultat. Le découpage se fait en fonction du séparateur et la chaine de caractère est racourcie à chaque appel. |
| Sep est le séparateur, s'il est omis, il utilise la variable d'environnement txt_CurrentSep qui est paramétrée par la méthode txt_SetCurrentSep et qui a par défaut la valeur retournée par txt_Sep c'est à dire "]-$-[". |
| Le fonctionnement standard de la méthode txt_CutOut est de renvoyer toute la chaine si le séparateur n'est pas ou plus trouvé dans ptrTexte et de vider ptrTexte de son contenu. |
| Le paramètre Opt permet de modifier ce comportement. Si ce paramètre est passé, dans le cas ou le séparateur n'est pas trouvé, la méthode renvois une chaine vide et ptrTexte conserve son contenu. |
| Le premier mode de fonctionnement est intéressant lorsque la chaine de caractère ne se termine pas par le séparateur et que cela signifie qu'on est arrivé à la fin de la chaine. On récupère le dernier morceau et la chaine traitée est vidée. |
| Le deuxième mode est préférable lorsqu'il s'agit de traiter une chaine où le fait de ne pas trouver le séparateur ne signifie pas que l'extraction est fini. L'extraction doit pouvoir se poursuivre avec un autre séparateur. La chaine de caractère doit être conservée et la méthode ne doit rien renvoyer. |
| Voici un extrait de la méthode prp_TextToArray qui construit un tableau à partir d'un texte. $cr contient un retour chariot. L'absence possible du séparateur, à la dernière ligne du texte, n'empèche pas de traiter le texte jusqu'au bout. |
| $sizeof:=Taille tableau($2->)+1 |
| INSERER LIGNES($2->;$sizeof) |
| Autre cas extrait de la méthode www_DownloadLogsFromWebSrv qui télécharge les logs du serveur web pour les intégrer à la base de statistiques. Dans cette méthode, le séparateur est une chaine de 40 tirets bas suivi d'un retour chariot. La chaine contenue dans $ptrString dépointé ne doit pas être modifiée si le séparateur n'est pas trouvé. Après l'appel à txt_CutOut, on test le contenu de la variable affectée par la méthode pour savoir si elle est vide ou non. |
| $ptrString->:=$ptrString->+$ptrArrLog->{$y} |
| $ptrHttpHeader->:=txt_CutOut ($ptrString;$Delimit;Opt ) |
Documentation | Méthode | Chaine
| Haut de page | Retour
|