Wie schreibe ich erweiterte Beschriftungsausdrücke, um nur einen Teil einer Zeichenfolge anzuzeigen?
Ich möchte, dass meine Daten, die wie diese EVA007 aussehen, nur den 007-Teil anzeigen.
Kommentare
- Welche ' ist die Regel für Ihre Kennzeichnung? Schneidet es die ersten drei Buchstaben? Oder alles außer Zahlen schneiden?
Antwort
Wenn Sie die ersten drei Buchstaben schneiden möchten, können Sie verwenden den folgenden Python-Ausdruck (Option „erweiterter“ Ausdruck festlegen):
def FindLabel([NAME]): return [NAME][3:]
Wenn Sie die letzten drei Zeichen (in Ihrem Fall Zahlen) behalten möchten, anstatt zu schneiden Ändern Sie in den ersten drei Fällen [3:]
in [:-3]
.
Kommentare
- Hat perfekt funktioniert!
Antwort
Basierend auf dem VB-Skript könnte die Lösung
Right([FIELDNAME], 3)
oder
Replace([FIELDNAME], "EVA", "")
Antwort
Eine andere Lösung, wenn Sie die Alphabete entfernen und nur die Endnummern anzeigen möchten:
import re def FindLabel ( [FIELDNAME] ): p = re.search("[0-9]+", [FIELDNAME]) if p is None: return [FIELDNAME] else: return p.group(0).replace("(","")