Message posté par : Demonshine
----------------------------------------
Bonjour,
Afin de gérer l’étiquetage d'une couche, je souhaite extraire une chaine de caractères
dans une colonne : "nom". Sauf que les chaines de caractères à extraire dans
cette colonne sont variables et je n'arrive donc pas à récupérer les valeurs que je
veux pour tous les cas possibles.
Voici quelques valeurs présentes dans ma colonne "nom" pour illustrer mon
problème :
cas 1 : - Échangeur Numéro 14 de Croix Daurade -> récupérer seulement le chiffre :
'14' (étiquette 1) puis le nom soit : 'Croix Daurade'(étiquette 2)
cas 2 : - Échangeur Numéro 10.1 d'Eurocentre -> récupérer seulement le chiffre :
'10.1'(étiquette 1) puis le nom soit : 'Eurocentre' (étiquette 2)
cas 3 : - Échangeur A64-A620 -> récupérer seulement le nom : 'A64-A620'
(étiquette 2)
cas 4 : - Échangeur des Demoiselles -> récupérer seulement le nom 'Demoiselles'
(étiquette 2)
Il faudrait donc que je fasse deux conditions pour gérer l'affichage des étiquettes en
affichant seulement le numéro (condition 1) et seulement le nom (condition 2).
Pour afficher seulement les numéros, j'ai essayé la requête :
-----------------
Code :
regexp_substr(upper("nom"),'(\\d+.)')
-----------------
mais cette requête ne me prend pas en compte tous les cas.
Pour afficher seulement les noms, j'ai essayé cette requête :
-----------------
Code :
right("nom",length("nom")- strpos("nom", 'de'))
-----------------
Mais sans succès car la lettre 'e' du mot "de" (ex : cas 1)
s'affiche dans mon étiquette juste avant le nom. Autre soucis est que j'aimerais
également gérer les cas si au lieu du mot de avant le toponyme j'ai le mot
"du", "des", "de la" ou "d"...
Merci d'avance pour votre aide
----------------------------------------
Le message est situé
https://georezo.net/forum/viewtopic.php?pid=344004#p344004
Pour y répondre : qgis_fr(a)ml.georezo.net ou reply de votre messagerie
Pour vous désabonner connectez-vous sur le forum puis Profil / Abonnement
--
Association GeoRezo - le portail géomatique
https://georezo.net