import re
pattern = r"\btarget\s*(\d+)|.*[t.](\d+)$"
strings = [
"abc123-Target 4-ufs",
"abc123-target4-ufs",
"geo.4",
"j123T4"
]
for s in strings:
matches = re.finditer(pattern, s, re.IGNORECASE)
for matchNum, m in enumerate(matches):
print ("target " + (m.group(2) if m.group(2) else m.group(1)))
aW1wb3J0IHJlCgpwYXR0ZXJuID0gciJcYnRhcmdldFxzKihcZCspfC4qW3QuXShcZCspJCIKc3RyaW5ncyA9IFsKICAgICJhYmMxMjMtVGFyZ2V0IDQtdWZzIiwKICAgICJhYmMxMjMtdGFyZ2V0NC11ZnMiLAogICAgImdlby40IiwKICAgICJqMTIzVDQiCl0KCmZvciBzIGluIHN0cmluZ3M6CiAgICBtYXRjaGVzID0gcmUuZmluZGl0ZXIocGF0dGVybiwgcywgcmUuSUdOT1JFQ0FTRSkKICAgIGZvciBtYXRjaE51bSwgbSBpbiBlbnVtZXJhdGUobWF0Y2hlcyk6CiAgICAgICAgcHJpbnQgKCJ0YXJnZXQgIiArIChtLmdyb3VwKDIpIGlmIG0uZ3JvdXAoMikgZWxzZSBtLmdyb3VwKDEpKSk=