|
Fonction cherche , extrait chaine |
Iniciado por Quentin Lec., 24,feb. 2020 14:20 - 4 respuestas |
| |
| | | |
|
| |
Miembro registrado 18 mensajes |
|
Publicado el 24,febrero 2020 - 14:20 |
Bonjour,
Je ne comprends pas bien le fonctionnement des fonctions cherche et extrait chaîne. J'en ai besoin pour extraire des informations d'un tableau composé de chaîne de caractère.
Mon application :
J'ai un tableau à 1 dimension contenant des lignes de codes, par exemple : X45 Y13 Je souhaite dans un premier temps à l'aide de la fonction cherche déterminer ou non s'il y a des caractères "X" et "Y" présent dans la ligne.
Ensuite extraire le nombre derrière le X et le Y a fin de l'affecter à une autre variable.
Voici mon code : POUR i= 1 À 3 PAS 1 LigneLue=Cherche(tabTableauEnregistre[j],tcLinéaire,"X""Y") SI LigneLue=-1 ALORS SORTIR FIN X[i]=ExtraitChaîne(tabTableauEnregistre[j],"X"," ") Y[i]=ExtraitChaîne(tabTableauEnregistre[j],"Y"," ")
J'ai besoin des variables X1 Y1 X2 Y2 X3 Y3 et j sert à parcourir l'entièreté du tableau.
Si je ne suis pas assez clair, prévenez moi et je répondrais aux questions.
Merci d'avance |
| |
| |
| | | |
|
| | |
| |
Miembro registrado 2.566 mensajes Popularité : +222 (260 votes) |
|
Publicado el 24,febrero 2020 - 15:02 |
Bonjour,
En faisant comme ça tout simplement:
sMaChaine est une chaîne = "X1 Y1 Z25 X2 Y2 X3 Y3"
POUR TOUTE chaîne sUneChaine de sMaChaine SEPAREE PAR " " SI sUneChaine = "" _OU_ PAS Contient(sUneChaine,["X","Y"]) ALORS CONTINUER Trace(Remplace(sUneChaine,["X","Y"],"")) FIN
-- Cordialement,
Philippe SAINT-BERTIN |
| |
| |
| | | |
|
| | |
| |
Miembro registrado 18 mensajes |
|
Publicado el 24,febrero 2020 - 15:31 |
Je crois que vous m'avez mal compris.
Prenons le un tableau Tab : Tab[1] = X50.4 Y67.8 Z45 Tab[2] = X45 Y86 Tab[3] = X89 Y33
Il faut que j'obtienne : X1=50.4 Y1=67.8 X2=45 Y2=86 X3=89 Y3=33 |
| |
| |
| | | |
|
| | |
| |
Miembro registrado 309 mensajes Popularité : +31 (37 votes) |
|
Publicado el 24,febrero 2020 - 15:57 |
Bonjour
Par exemple
POUR indi=1 À TAB..Occurrence {"X"+indi,indVariable}=Val(TAB[indi][[Position(TAB[indi],"X")+1 À]]) {"Y"+indi,indVariable}=Val(TAB[indi][[Position(TAB[indi],"Y")+1 À]]) FIN
Bon dev |
| |
| |
| | | |
|
| | |
| |
Miembro registrado 2.566 mensajes Popularité : +222 (260 votes) |
|
Publicado el 24,febrero 2020 - 16:09 |
Je crois que vous m'avez mal compris.
Prenons le un tableau Tab : Tab[1] = X50.4 Y67.8 Z45 Tab[2] = X45 Y86 Tab[3] = X89 Y33
Il faut que j'obtienne : X1=50.4 Y1=67.8 X2=45 Y2=86 X3=89 Y3=33
Mon exemple fonctionne parfaitement même dans ce cas, il ne reste plus qu'à inclure mon code dans une boucle pour parcourir le tableau.
MonTableau est tableau de chaînes = ["X50.4 Y67.8 Z45","X45 Y86","X89 Y33"] sMaChaine est une chaîne
POUR TOUT sMaChaine,nIndice de MonTableau POUR TOUTE chaîne sUneChaine de sMaChaine SEPAREE PAR " " SI sUneChaine = "" _OU_ PAS Contient(sUneChaine,["X","Y"]) ALORS CONTINUER Trace(sUneChaine[[1]] + nIndice + " = " + Remplace(sUneChaine,["X","Y"],"")) FIN FIN
-- Cordialement,
Philippe SAINT-BERTIN |
| |
| |
| | | |
|
| | | | |
| | |
|