[R] Supprimer les espaces en trop d'une chaîne de caractère
Règles du forum
- Merci de consulter la section "Règles du forum" et plus particulièrement "Règles et Mentions Légales du site autoitscript.fr" avant d'écrire un message.
[R] Supprimer les espaces en trop d'une chaîne de caractère
Bonjour,
J'ai une chaîne de caractère qui peut contenir des mots avec parfois des espaces à l'intérieur mais aussi et surtout des espaces à la fin de la chaîne. J'aimerai me débarrasser de ses espaces en trop mais je ne vois pas trop comment m'en sortir...
Par exemple j'ai ce genre de chaînes (les points sont des espaces):
TAAOUINE........
AAAA..BBBB.....................
J'ai une chaîne de caractère qui peut contenir des mots avec parfois des espaces à l'intérieur mais aussi et surtout des espaces à la fin de la chaîne. J'aimerai me débarrasser de ses espaces en trop mais je ne vois pas trop comment m'en sortir...
Par exemple j'ai ce genre de chaînes (les points sont des espaces):
TAAOUINE........
AAAA..BBBB.....................
Modifié en dernier par clark17 le ven. 15 févr. 2013 16:28, modifié 2 fois.
- mikell
- Spammer !

- Messages : 6292
- Enregistré le : dim. 29 mai 2011 17:32
- Localisation : Deep Cévennes
- Status : Hors ligne
Re: [..] Supprimer les espaces en trop d'une chaîne de carac
Code : Tout sélectionner
StringStripWS ( "string", [color=#880000]8[/color] )" L'échec est le fondement de la réussite. " (Lao-Tseu )
" Plus ça rate, plus on a de chances que ça marche " (les Shadoks )
" Plus ça rate, plus on a de chances que ça marche " (les Shadoks )
-
ani
- Niveau 11

- Messages : 1826
- Enregistré le : lun. 23 juil. 2007 12:31
- Localisation : Bureau
- Status : Hors ligne
Re: [..] Supprimer les espaces en trop d'une chaîne de carac
ou bien 
ConsoleWrite(StringRegExpReplace("AAAAAAA BBBBBBBB CIDJI IDJ ","\s",""))
vous renverra AAAAAAABBBBBBBBCIDJIIDJ
ConsoleWrite(StringRegExpReplace("AAAAAAA BBBBBBBB CIDJI IDJ ","\s",""))
vous renverra AAAAAAABBBBBBBBCIDJIIDJ
Re: [..] Supprimer les espaces en trop d'une chaîne de carac
Grrr il m'a coupé les espaces dans les guillemets, j'ai remplacé par des points. Je veux juste me séparer des espaces à la fin du mot, pas à l'intérieur.
Re: [..] Supprimer les espaces en trop d'une chaîne de carac
Je m'auto répond, à l'aide de la fonction StringStripWS et le flag 1+2 il m'enlève les espaces au début et à la fin. Ça nous donne ceci:
Merci à vous, sujet résolu.
Code : Tout sélectionner
Local $text = StringStripWS(" this is a line of text ", 3)
MsgBox(0, "Stripped from both ends", $text)
- TommyDDR
- Modérateur

- Messages : 2130
- Enregistré le : mar. 22 juil. 2008 21:55
- Localisation : Nantes
- Status : Hors ligne
Re: [..] Supprimer les espaces en trop d'une chaîne de carac
Ou le vilain, Mikell vous a donné 99% de la réponse. ^^clark17 a écrit :Je m'auto répond
3.1415926535897932384626433832795028841971693993751058209749445923078164062862089986280348253421170679
-
ani
- Niveau 11

- Messages : 1826
- Enregistré le : lun. 23 juil. 2007 12:31
- Localisation : Bureau
- Status : Hors ligne
Re: [R] Supprimer les espaces en trop d'une chaîne de caract
Code : Tout sélectionner
ConsoleWrite(StringRegExpReplace(" AAAAAAA BBBBBBBB CIDJI IDJ ","\s+\z","") & @LF)\s = recherche les espaces, @TAB,@LF, @CRLF
+ = repete le caractere
\z = recherche a la fin de la chaine
reviend à l'identique
Code : Tout sélectionner
ConsoleWrite(StringStripWS ( " AAAAAAA BBBBBBBB CIDJI IDJ ", 2 ) & @LF)1 = retire tout les espacement du Debut
2 = retire tout les espacement de Fin
3 = retire tout les espacement du Debut et Fin
4 = retire les espacement double en debut et fin de chaine
8 = retire tout les espaces
SI vous voulez retirez en debut et fin de chaine comme votre auto réponse(c l'exemple fournis de l'aide), vous avez ceux-ci en regex
Code : Tout sélectionner
ConsoleWrite(StringRegExpReplace(" AAAAAAA BBBBBBBB CIDJI IDJ ","^\s+|\s+\z","") & @LF)
ConsoleWrite(StringRegExpReplace(" AAAAAAA BBBBBBBB CIDJI IDJ ","\A\s+|\s+\z","") & @LF)\A = debut de chaine
| = ou bien
voilàvoilà

