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

Rencontres QGIS 2025

L'appel à participation est ouvert jusqu'au 19 janvier 2025!

#1 Mon 22 January 2024 10:57

pablo.olivares
Participant occasionnel
Date d'inscription: 14 Jul 2023
Messages: 11

QGIS: Expression pour effacer accents espaces et autres

Bonjour, je cherche une expression qui me permettra d'effacer accents, espaces et autres caractères pour un calcul automatique. Je cherche a faire une concaténation avec un texte fixe du genre: "http://", "nom corrigé sans accents et espaces", "depart"

Par exemple j'ai "la gare" et je voudrai avoir: http://lagaredepart
Là gare --> http://lagaredepart
La-gare--> http://lagaredepart

voyez vous l'expression qui ferai ce job?

Merci d'avance

Hors ligne

 

#2 Mon 22 January 2024 12:47

Vincent Vauchey
Participant assidu
Lieu: saint jean de braye
Date d'inscription: 24 Jan 2006
Messages: 288

Re: QGIS: Expression pour effacer accents espaces et autres

Bonjour

Je ne pense pas que cela soit possible en une seule manipulation, mais plusieurs.


Pour mettre le texte en minuscule :  lower( )

Pour les caractères genre à é è et autre utilisé la fonction pour remplacer une chaine de texte :  replace( )

Et voila.

++

Hors ligne

 

#3 Mon 22 January 2024 12:48

SANTANNA
Moderateur
Lieu: Angers
Date d'inscription: 18 Jan 2008
Messages: 3940

Re: QGIS: Expression pour effacer accents espaces et autres

Bonjour,
Je n'ai pas connaissance d'une fonction dans QGIS qui vous permet directement de flinguer les accents et espaces dans QGIS vous pouvez regarder du côté de la fonction replace. Il vous permet de lister les caractères avant-après à relier entre eux.

Hors ligne

 

#4 Mon 22 January 2024 12:55

pablo.olivares
Participant occasionnel
Date d'inscription: 14 Jul 2023
Messages: 11

Re: QGIS: Expression pour effacer accents espaces et autres

Merci de vos réponses, j'ai réussi en ajoutant chaque caractère à remplacer.

concat('https://', regexp_replace(regexp_replace(regexp_replace(regexp_replace(regexp_replace(regexp_replace(regexp_replace(regexp_replace( "nom" , 'é', 'e'), 'è', 'e'), 'à', 'a'), 'î', 'i'), 'ü', 'u'), 'ê', 'e'), '\\s', ''), '[^a-zA-Z0-9]', ''), '/depart')

Hors ligne

 

Pied de page des forums

Powered by FluxBB