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("(","")