La question provient d'une discussion du forumSIG http://www.forumsig.org/showthread.php?t=31982
ArcGIS permet aujourd'hui et de plus en plus d'utiliser le langage python, ainsi il est possible d'utiliser toute la puissance de ce langage au travers d'ArcGIS et même via la calculatrice de champs.
Pour répondre à cette question il est par exemple possible d'utiliser le module re de python : régular expression http://docs.python.org/library/re.html
On utilise ensuite la méthode sub du module re qui va faire un chercher remplacer et fonctionne ainsi
re.sub(motifarechercher,remplacement,chaine)
ici on cherche les lettres, on les remplace par rien ce qui nous donne :
re.sub('[a-zA-Z]','',montexte)
Si on souhaite faire l'inverse, c'est à dire ne récupérer que les lettres on pourrait faire :
re.sub('[0-9]','',montexte)
Cela se traduirait ainsi dans la Calculatrice de valeurs de champs (en partant du principe que je veux mettre à jour mon champs "remplaceme" à partir du champs "texte" et en ne souhaitant conserver que les chiffres) :
- Cocher python dans l'Analyseur
- Activer Afficher le bloc de code
- Remplir ainsi :
Et voici le résultat dans la table attributaire :
Le motif à rechercher utilise les expressions régulières, on peut donc complexifier considérablement le motif à rechercher pour arriver au résultat souhaité.
Il y a probablement de nombreuses autres possibilités pour arriver à ce résultat.