begin process at 2008 08 21 23:34:31
1 229 711 membres
519 nouveaux aujourd'hui
14 267 membres club

Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum.
Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

Sujet : Espace multiples dans une variable et/ou $1- [ Archives / Scripting ] (murony)

Espace multiples dans une variable et/ou $1- le 31/01/2006 19:15:50

murony
Bonjour,

Voilà j'ai un :
on *:TEXT:*:?:{ }
J'analyse donc le $1- et je le parse avec une expression régulière, mais avant ça, je remplace tous les caractères suceptibles de me poser problèmes ( /\^$*+. etc...) ET les espaces que je convertis en " \s " mais voilà si quelqu'un m'envoie un message du style
"<nick>    Salut"
avec plusieurs espaces devant, $1- me donne "Salut" et donc je ne trouve aucune occurences avec ma regex, par contre si je set moi même une variable en tapant
"/set %var Un te    st he   hé"
ma variable %var a bien la valeur
"Un te    st he   hé"
mais j'entre ça dans un remote alors les espaces sont supprimés.
Le problème semble donc venir de $1- existe t il un identifieur qui me permettrait de remédier à celà ? en conservant tous les espaces ?
Quelqu'un aurait il une suggestion à faire ?
J'espère avoir été clair.

Merci d'avance

Re : Espace multiples dans une variable et/ou $1- le 01/02/2006 00:42:21

tofu
Membre Club
mIRC "compresse" les espaces consécutifs en un seul je crois.. pour éviter ça tu peux faire un $replace() sur les $chr(32) pour les transformer en $chr(160) (qui fait un espace aussi mais qui n'est pas compressé par mIRC qd yen a plusieurs)

Re : Espace multiples dans une variable et/ou $1- le 01/02/2006 15:32:22

murony
Réponse acceptée !
merci de ta réponse, mais je ne pas remplaçais un charactère qui n'existe pas !
Puis que je récupère la valeur de mon ON TEXT dans $1- et il semblerait que la compression s'effectue à ce niveau là.
De plus le caractère ascii 160 n'est PAS un espace, il n'est pas reconnu par toutes les polices de caratères comme un espace, ce qui pourrait poser des problèmes de compatibilités.
Cela dit j'ai trouvé la solution, j'utilise ON TEXT avec à la place d'un wildcard * une expression régulière, puis je récupère l'occurence trouvé par $regml(1) plutot que par $1- et je conserve donc mes espaces, je l'ai converti ensuite en \s ce qui correspond à un espace dans la règle POSIX


Classé sous : voil, variable, espace, espaces, multiples

Participer à cet échange

Pub



Appels d'offres

CalendriCode

Août 2008
LMMJVSD
    123
45678910
11121314151617
18192021222324
25262728293031

VS Express FR Gratuit !

VS Express en français et 100% gratuit !

Téléchargements

Logiciels à télécharger sur le même thème :

Boutique

Boutique de goodies CodeS-SourceS