Expression détiquette avancée dans ArcMap pour exclure une partie dune chaîne

Comment écrire une expression détiquetage avancée pour nafficher quune partie dune chaîne?

Je veux que mes données qui ressemblent à cet EVA007 ne montrent que la partie 007.

Commentaires

  • What ' est la règle pour votre étiquetage? Est-ce que ça coupe les trois premières lettres? Ou couper tout sauf les nombres?

Réponse

Si vous voulez couper les trois premières lettres, vous pouvez utiliser lexpression Python suivante (option de définition de lexpression « advanced »):

def FindLabel([NAME]): return [NAME][3:] 

Si vous souhaitez conserver les trois derniers caractères (nombres dans votre cas) au lieu de couper les trois premiers, remplacez [3:] par [:-3].

Commentaires

  • A parfaitement fonctionné!

Réponse

Sur la base du script VB, la solution pourrait être

Right([FIELDNAME], 3) 

ou

Replace([FIELDNAME], "EVA", "") 

Réponse

Une autre solution, si vous souhaitez supprimer les alphabets et nafficher que les nombres de fin:

import re def FindLabel ( [FIELDNAME] ): p = re.search("[0-9]+", [FIELDNAME]) if p is None: return [FIELDNAME] else: return p.group(0).replace("(","") 

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *