|
| extraire élement d'une chaine de caracteres |
| Iniciado por william_k, 23,nov. 2018 15:54 - 2 respuestas |
| |
| | | |
|
| |
| Publicado el 23,noviembre 2018 - 15:54 |
Bonjour,
Je suis débutant en Wlangage et je cherche à extraire certains caractères dans une chaine.
Exemple: ["48.9195119","48.9217503","2.2119592","2.2141933"],"polygonpoints":[["2.2141933","48.9195119"],["2.2122588","48.9214567"],["2.2119592","48.9217503"]],"lat":"48.9214567","lon":"2.2122588","display_name":"Rue Louis Rameau, Bezons, Argenteuil, Val-d'Oise, Ile-de-France, Metropolitan France, 95870, France","class":"highway","type":"residential","importance":0.535,"address":{"road":"Rue Louis Rameau","town":"Bezons","county":"Argenteuil","state":"Ile-de-France","country":"France","postcode":"95870","country_code":"fr"}}]
J'ai juste besoin ici de stocker ce qu'il y a après lat et lon.
Merci d'avance |
| |
| |
| | | |
|
| | |
| |
Miembro registrado 256 mensajes |
|
| Publicado el 23,noviembre 2018 - 18:09 |
Bonjour
Ca ressemble beaucoup à un extrait de JSON ça (il manque apparemment le début). Si c'est bien du JSON, regardez : - le type JSON (en version 24) - la fonction JSONVersVariant (en version 23 et précédente) |
| |
| |
| | | |
|
| | |
| |
| Publicado el 26,noviembre 2018 - 12:01 |
Bonjour
Tu peux aussi utiliser les fonctions traitant des chaines de caractères.
Exemple est chaîne= [ ["48.9195119","48.9217503","2.2119592","2.2141933"],"polygonpoints":[["2.2141933","48.9195119"],["2.2122588","48.9214567"],["2.2119592","48.9217503"]],"lat":"48.9214567","lon":"2.2122588","display_name":"Rue Louis Rameau, Bezons, Argenteuil, Val-d'Oise, Ile-de-France, Metropolitan France, 95870, France","class":"highway","type":"residential","importance":0.535,"address":{"road":"Rue Louis Rameau","town":"Bezons","county":"Argenteuil","state":"Ile-de-France","country":"France","postcode":"95870","country_code":"fr"}}] ]
Latitude est réel DebutLat est entier=Position(Exemple,""+"lat"":"+"")+ 6 FinLat est entier=Position(Exemple,",",DebutLat)-2
Latitude =Val(Exemple[[DebutLat A FinLat]]) Trace(Latitude)
Latitude=(Val(Milieu(Exemple,DebutLat,FinLat-DebutLat+1))) Trace(Latitude)
Pour DebutLat : On cherche une sous-chaîne composée d'un guillemet, du mot 'lat', du caractère ':' suivi d'un nouveau guillemet. Ce qui fait : Position(Exemple,""+"lat"":"+""). On trouve alors l'emplacement du début de cette sous-chaîne et on lui ajoute 6, car elle mesure 6 caractères ; on trouve alors l'emplacement du début de la valeur cherchée, ici le chiffre 4 débutant '48.9214567'. Pour Finlat: On cherche la première virgule suivant DebutLat, qui se trouve donc à l'emplacement suivant DebutLat. On lui retire 2, car on retire l'emplacement de la virgule, et le guillemet précédent cette virgule. On trouve donc l'emplacement du 7 final de '48.9214567'. On utilise ensuite les opérateurs [ et ] pour extraire la sous-chaine ainsi délimitée, qu'on traduit en numérique avec Val(). On peut utiliser également l'autre syntaxe avec Milieu(). Ces fonctions sont extrêmement utiles... ElPato |
| |
| |
| | | |
|
| | | | |
| | |
|