Nous utilisons des cookies pour vous garantir la meilleure expérience sur notre site. Si vous continuez à utiliser ce dernier, nous considèrerons que vous acceptez l'utilisation des cookies. J'ai compris ! ou En savoir plus !.
banniere

Le portail francophone de la géomatique


Toujours pas inscrit ? Mot de passe oublié ?
Nom d'utilisateur    Mot de passe              Toujours pas inscrit ?   Mot de passe oublié ?

Annonce

Depuis plusieurs semaines, quand un utilisateur (membre des forums) poste un message (bouton "envoyer"), le délai de mise en ligne est proche de 10 secondes.
Merci de patienter et de ne pas rafraichir l'écran.
Yves (webmaster) est sur le coup wink
Merci pour votre compréhension.

#1 Thu 22 April 2021 14:00

GOLDOSAM
Participant actif
Date d'inscription: 7 Jul 2017
Messages: 54

Aide pour rechercher et splitter à partir d'expression régulière.

Bonjour,

J'aimerais à partir d'une expression régulière chercher un mot et splitter comme ci-dessous.


J'ai ce genre de donnée à préparer ainsi :

Départ de la donnée -> 10 A RUE DE TOTO ou 8 RUE DE TOTO

à la fin -> NUM_VOIRIE=10
               SEQ=A
               NOM_RUE=RUE DE TOTO

ou

à la fin -> NUM_VOIRIE=8
               NOM_RUE=RUE DE TOTO

Quelle approche auriez-vous pour bien séparer mes données ?

Merci à vous,

Hors ligne

 

#2 Thu 22 April 2021 17:47

Diplos
Participant occasionnel
Lieu: Lorraine
Date d'inscription: 23 Aug 2016
Messages: 25

Re: Aide pour rechercher et splitter à partir d'expression régulière.

Bonjour,

Avec 10 A RUE DE TOTO en A1 dans un fichier Excel.

En B1 pour obtenir le numéro de rue =STXT(A1;1;TROUVE(" ";A1;1)-1)

En C1 pour obtenir la rue sans le numéro =STXT(A1;TROUVE(" ";A1)+1;250)

En D1 pour obtenir SEQ =STXT(C1;1;TROUVE(" ";C1;1)-1)

En E1 pour obtenir la rue =STXT(C1;TROUVE(" ";C1)+1;250)

Remarque, il faut contrôler les résultats :

Si la colonne B ne doit contenir que des chiffres un petit tri des résultats permettra d'identifier :
- les erreurs de saisie 10B au lieu de 10 B
- les rue sans numéros

Si la colonne D ne doit contenir que des lettres d'un caractère un nbcar permettra de vérifier les données différentes de 1

Automatiquement il faudra adapter les formules ou les valeurs saisie en colone C, D pour conserver le résultat attendu.


Diplos

Hors ligne

 

#3 Thu 22 April 2021 19:36

cquest
Participant assidu
Date d'inscription: 6 Jan 2013
Messages: 834

Re: Aide pour rechercher et splitter à partir d'expression régulière.

GOLDOSAM a écrit:

Bonjour,

J'aimerais à partir d'une expression régulière chercher un mot et splitter comme ci-dessous.


J'ai ce genre de donnée à préparer ainsi :

Départ de la donnée -> 10 A RUE DE TOTO ou 8 RUE DE TOTO

à la fin -> NUM_VOIRIE=10
               SEQ=A
               NOM_RUE=RUE DE TOTO

ou

à la fin -> NUM_VOIRIE=8
               NOM_RUE=RUE DE TOTO

Quelle approche auriez-vous pour bien séparer mes données ?

Merci à vous,


toutes les adresses sont structurées comme ça ?
- pas d'abréviation sur le type de voie comme "A DE LA MAIRIE" ou "R DE L'EGLISE" ?


Dans ce cas: 

Code:

^([0-9]*) ?(.|BIS|TER|QUATER)? (.*)$

\1 contient le numéro seul
\2 le suffixe
\3 contient le nom de voie

Exemple (visuel): https://regex101.com/r/7QL76e/2/


Christian Quest - @cq94 sur twitter
Membre fondateur et porte parole d'OpenStreetMap France
A l'origine de @opendatArchives, OpenEventDatabase

Hors ligne

 

#4 Thu 22 April 2021 20:46

p.jeremie
Participant assidu
Lieu: Valence
Date d'inscription: 10 Sep 2017
Messages: 374

Re: Aide pour rechercher et splitter à partir d'expression régulière.

Top comme expression @cquest.

Pour info, début de discussion à ce sujet également dans le forum FME.
L'expression proposée répondra bien également dans cet outil.

https://georezo.net/forum/viewtopic.php?pid=342628

Hors ligne

 

Pied de page des forums

Powered by FluxBB