Cum scriu o expresie de etichetare avansată pentru a afișa doar o parte a unui șir?
Vreau ca datele mele care arată ca acest EVA007 să arate doar partea 007.
Comentarii
- Ce ' este regula pentru etichetarea dvs.? Tăiați trei litere? Sau tăiați totul, cu excepția numerelor?
Răspundeți
Dacă doriți să tăiați primele trei litere, puteți utiliza următoarea expresie Python (setați opțiunea „avansată” expresie):
def FindLabel([NAME]): return [NAME][3:]
Dacă doriți să păstrați ultimele trei caractere (numere în cazul dvs.) în loc să tăiați primele trei, schimbați [3:]
în [:-3]
.
Comentarii
- A funcționat perfect!
Răspuns
Pe baza scriptului VB, soluția ar putea fi
Right([FIELDNAME], 3)
sau
Replace([FIELDNAME], "EVA", "")
Răspuns
O altă soluție, dacă doriți să eliminați alfabetele și să afișați numai numerele de final:
import re def FindLabel ( [FIELDNAME] ): p = re.search("[0-9]+", [FIELDNAME]) if p is None: return [FIELDNAME] else: return p.group(0).replace("(","")