Batch Index du Forum
S’enregistrerRechercherFAQMembresGroupesConnexion
Répondre au sujet Page 1 sur 1
Lire une chaîne de caractère "lettre par lettre"
Auteur Message
Répondre en citant
Message Lire une chaîne de caractère "lettre par lettre" 
Bonjour a tous,

Je suis sur le point de démarrer un projet personnel et il me manque une seule information pour commencer.

Voici le problème:

Citation:
Dans une chaîne de caractère, comment la lire en séparant les caractères sans séparateur?

Bon, je peu vous avouer que je n'est pas réussi a bien m'expliquer...

Rien ne vaut un exemple:

Code:
B,o,n,j,o,u,r, ,1,+,1,=,2,.

Je sais très bien comment lire la ligne ci-dessus "caractère par caractère", il suffit de mettre en paramètre un simple "delims=," dans la commande for.

Mais comment faire exactement la même chose avec celle ci-dessous?
Code:
Boujour 1+1=2.


Voila ma question. J'espère m'être bien exprimer.
Si vous ne parvenez pas a comprendre mon problème, dite le moi et j'essérais de mieux m'exprimer.

J'espère que quelqu'un réussira a m'éclairer. J'attend une réponse avec impatience.

Merci,
£`/@]



Dernière édition par rekah le Sam 12 Nov 2011 - 22:22; édité 1 fois

______________________________________________________


*Si l'erreur est humaine c'est parce que l'humanité en est une.*

£'/@] - Anciennement rekaca
MSN Skype
Message Publicité 
PublicitéSupprimer les publicités ?


Répondre en citant
Message Lire une chaîne de caractère "lettre par lettre" 
hello !

tu fait un :STRLEN_ sur la chaine
et puis tu fais une boucle for /l

ps: pour STRLEN_ fais une recherche sur le fofo ou là
http://batch.xoo.it/t2192-Un-bibliotheque-de-fonction-en-batch-del-Enfin-de…

(tu est pas obligé d'utiliser la lib mais la fonction est à la fin ...

@+




______________________________________________________
--
> Que pensez vous de l'ajout du repertoire point dans $PATH ?
Ma version de troll 18.0.32 beta 3 vient de me faire un core dump.
-+- SE in Guide du Linuxien Pervers : Bien développer son troll -+-

[Dos9]
Visiter le site web du posteur Skype
Répondre en citant
Message Lire une chaîne de caractère "lettre par lettre" 
Hello,

Je ne cherche pas a compter le nombre de caractère dans une chaine mais séparé tout les caractères (sans séparateur) afin de les lires une par une :s

EDIT: Ahh, J'ai compris, c'est encore mieux que se que je chercher! Merci a toi DarkBatcher!!
Je vais enfin pouvoir commencé se projet qui trotte dans ma tête depuis des semaines Very Happy

EDIT²: Pourrais-je avoir un exemple en rapport avec mon cas? Car je ne vois pas l'utilité de StrLen_, parce que, comme dit plus haut:
Citation:
Je ne cherche pas a compter le nombre de caractère dans une chaine mais séparé tout les caractères (sans séparateur) afin de les lires une par une :s

Alors j'ai utiliser ton ParseLn_ sauf que la sa me séparer juste les mot...
Help me, please!

£`/@]




______________________________________________________


*Si l'erreur est humaine c'est parce que l'humanité en est une.*

£'/@] - Anciennement rekaca
MSN Skype
Répondre en citant
Message Lire une chaîne de caractère "lettre par lettre" 
Hello,

Ok, donc je vient de m’apercevoir que ta fonction revient a faire une boucle for avec comme paramètre un simple "delims= ".

Ce que je veut c'est pouvoir lire la chaine, caractère par caractère sans avoir besoin de mettre un séparateur entre chaque caractère...

Merci, j'attend toujours avec impatience une nouvelle réponse.

£`/@]




______________________________________________________


*Si l'erreur est humaine c'est parce que l'humanité en est une.*

£'/@] - Anciennement rekaca
MSN Skype
Répondre en citant
Message Lire une chaîne de caractère "lettre par lettre" 
hello!

écoute rekaca ... tu pourrais être clair au moins une fois Mr. Green
si tu veux lire caractère par caractère ce qy'il faut que tu fasse c'est ça :
tu récupère la longueur de la ligne et tu boucle avec un for /l

Code:
@ECHO OFF
SETLOCAL ENABLEDELAYEDEXPANSION
SET /p chaine=entrez une chaine:
CALL :STRLEN_ longueur "%chaine%"
for /l %%A in (0,1,%longueur%) DO if not "!chaine:~%%A,1!"==" " ECHO !chaine:~%%A,1!
PAUSE

:STRLEN_
SET LibI=0
SET libCh=%~2
:strlBoucle
SET /a LibI+=1
SET LibLigne=!libCh:~0,%LibI%!
IF NOT "%LibLigne%"=="%libCh%" GOTO :strlBoucle
SET %1=%libI%
GOTO:EOF




Dernière édition par Darkbatcher le Dim 13 Nov 2011 - 15:17; édité 1 fois

______________________________________________________
--
> Que pensez vous de l'ajout du repertoire point dans $PATH ?
Ma version de troll 18.0.32 beta 3 vient de me faire un core dump.
-+- SE in Guide du Linuxien Pervers : Bien développer son troll -+-

[Dos9]
Visiter le site web du posteur Skype
Répondre en citant
Message Lire une chaîne de caractère "lettre par lettre" 
Hello,

Ah je le savais! (non, cette phrase est bien sur ironique.)

Merci a toi! Very Happy

Je n'y avais même pas penser

£`/@]




______________________________________________________


*Si l'erreur est humaine c'est parce que l'humanité en est une.*

£'/@] - Anciennement rekaca
MSN Skype
Message Lire une chaîne de caractère "lettre par lettre" 


Montrer les messages depuis:
Répondre au sujet Page 1 sur 1
  



Index | créer un forum | Forum gratuit d’entraide | Annuaire des forums gratuits | Signaler une violation | Conditions générales d'utilisation
Copyright 2008 - 2016 // Batch