Pages: 1
- Sujet précédent - Aide pour rechercher et splitter à partir d'expression régulière. - Sujet suivant
#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: 875
Re: 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,
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 - https://amicale.net/@cquest sur Mastodon (terminé twitter/X)
Membre fondateur et porte parole d'OpenStreetMap France
Initiateur de opendatArchives, OpenEventDatabase, Panoramax
Hors ligne
#4 Thu 22 April 2021 20:46
- p.jeremie
- Participant assidu
- Lieu: Valence
- Date d'inscription: 10 Sep 2017
- Messages: 427
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
Pages: 1
- Sujet précédent - Aide pour rechercher et splitter à partir d'expression régulière. - Sujet suivant