Zaawansowane wyrażenie etykiety w ArcMap, aby wykluczyć część ciągu

Jak napisać zaawansowane wyrażenia etykiet, aby pokazać tylko część ciągu?

Chcę, aby moje dane wyglądające jak ta EVA007 pokazywały tylko część 007.

Komentarze

  • Co ' Czy reguła dotycząca etykietowania? Czy to wycina pierwsze trzy litery? Albo wyciąć wszystko oprócz cyfr?

Odpowiedź

Jeśli chcesz wyciąć pierwsze trzy litery, możesz użyć następujące wyrażenie Pythona (ustaw opcję „zaawansowane” wyrażenie):

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

Jeśli chcesz zachować ostatnie trzy znaki (w twoim przypadku liczby) zamiast wycinania pierwsze trzy, zmień [3:] na [:-3].

Komentarze

  • Działało idealnie!

Odpowiedź

W oparciu o skrypt VB rozwiązaniem mogłoby być

Right([FIELDNAME], 3) 

lub

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

Odpowiedź

Inne rozwiązanie, jeśli chcesz usunąć alfabety i wyświetlić tylko końcowe liczby:

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

Dodaj komentarz

Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *