# coding=utf8
# the above tag defines encoding for this document and is for Python 2.x compatibility
import re
regex = r"(?:^| )TC(?:$|12)"
test_str = "0110062021110509 TC12116100000433583782810703D277C9A543200210020 0 0 00722310028175541 5492614542504 00000000000 5 5492613030447 4 02613030447 3110219434 543200210020 3110219434 5 1 0 10 703D277C9A10062021105125 0 0 5492613030447 5 2000 0 17 131072 1006202110512610062021105132 10062021105221 0 1310 000049 00 62 0 0 0 04C10780E0DC1E00543200610020 5 1 0 0 16384722 310 722 310 2 0 X360"
matches = re.finditer(regex, test_str, re.MULTILINE)
for matchNum, match in enumerate(matches, start=1):
print ("Match {matchNum} was found at {start}-{end}: {match}".format(matchNum = matchNum, start = match.start(), end = match.end(), match = match.group()))
for groupNum in range(0, len(match.groups())):
groupNum = groupNum + 1
print ("Group {groupNum} found at {start}-{end}: {group}".format(groupNum = groupNum, start = match.start(groupNum), end = match.end(groupNum), group = match.group(groupNum)))
# Note: for Python 2.7 compatibility, use ur"" to prefix the regex and u"" to prefix the test string and substitution.
Please keep in mind that these code samples are automatically generated and are not guaranteed to work. If you find any syntax errors, feel free to submit a bug report. For a full regex reference for Python, please visit: https://docs.python.org/3/library/re.html