import re
regex = re.compile(r"\d{1,3}\.\s[a-zA-Z\d\?\.\s].+$\n\s(a?\)\s[a-zA-Z].+).+\n\s(b?\)\s[A-Za-z].+).+\n\s(c\).[a-zA-Z].+)", flags=re.MULTILINE)
test_str = ("617. What would you like to eat for lunch? …, I don’t mind.\n"
" a) Nothing\n"
" b) Anything\n"
" c) Something\n"
"618. Where do you want to go on holiday? … with a beach.\n"
" a) Somewhere\n"
" b) Nowhere\n"
"613. You look familiar. Haven’t I seen you … before?\n"
" a) nowhere\n"
" b) anywhere\n"
" c) somewhere\n"
"614. She left the room without saying … .\n"
" a) nothing\n"
" b) anything\n"
" c) everything\n"
"615. I have never been … more beautiful than Thailand.\n"
" a) somewhere\n"
" b) nowhere\n"
" c) anywhere\n"
"616. Who was at the party? …, so something very bad must have happened.\n"
" a) No one\n"
" b) Anyone\n"
" c) Everyone\n"
"617. What would you like to eat for lunch? …, I don’t mind.\n"
" a) Nothing\n"
" b) Anything\n"
" c) Something\n"
"618. Where do you want to go on holiday? … with a beach.\n"
" a) Somewhere\n"
" b) Nowhere\n"
" c) Anywhere\n"
"619. I have … to say to you. Goodbye!\n"
" a) nothing\n"
" b) everything\n"
" c) something\n"
"620. I felt so good being on stage. I was sure that … was looking at me.\n"
" a) someone\n"
" b) everyone\n"
" c) no one\n"
"621. Can you please … some money until next week?\n"
" a) lend \n"
" b) borrow\n"
" c) give\n"
"622. I decided to invest in the commodities as the … on offer from bank was extremely low.\n"
" a) tax \n"
" b) rent \n"
" c) interest\n"
"623. Many retailers refuse to exchange purchases unless you can show them your … .\n"
" a) receipt\n"
" b) bill\n"
" c) Anywhere\n"
"619. I have … to say to you. Goodbye!\n"
" a) nothing")
matches = regex.finditer(test_str)
for match_num, match in enumerate(matches, start=1):
print(f"Match {match_num} was found at {match.start()}-{match.end()}: {match.group()}")
for group_num, group in enumerate(match.groups(), start=1):
print(f"Group {group_num} found at {match.start(group_num)}-{match.end(group_num)}: {group}")
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