# coding=utf8
# the above tag defines encoding for this document and is for Python 2.x compatibility
import re
regex = r"\"[A-Za-z]+ ([A-Za-z ]+)\""
test_str = (">genus [1] \"Bellatorias obiri\" \"Caretta caretta\" [3] \"Cyclodomorphus praealtus\" \"Dermochelys coriacea\" [5] \"Egernia stokesii badia\" \"Elseya lavarackorum\" [7] \"Elusor macrurus\" \"Eulamprus leuraensis\" [9] \"Eulamprus tympanum marnieae\" \"Lepidochelys olivacea\" [11] \"Lerista allanae\" \"Liopholis guthega\" [13] \"Liopholis slateri slateri\" \"Lucasium occultum\" [15] \"Tiliqua adelaidensis\" \"Tympanocryptis pinguicolla\"\n"
">genusnew [1] \"obiri\" \"caretta\" \"praealtus\" \"coriacea\" [5] \"badia\" \"lavarackorum\" \"macrurus\" \"leuraensis\" [9] \"marnieae\" \"olivacea\" \"allanae\" \"guthega\" [13] \"slateri\" \"occultum\" \"adelaidensis\" \"pinguicolla\" – Kiwi Power 45 secs ago\n"
"> species [1] \"obiri\" \"caretta\" \"praealtus\" \"coriacea\" [5] \"badia\" \"lavarackorum\" \"macrurus\" \"leuraensis\" [9] \"marnieae\" \"olivacea\" \"allanae\" \"guthega\" [13] \"slateri\" \"occultum\" \"adelaidensis\" \"pinguicolla\" ")
matches = re.finditer(regex, test_str)
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