# coding=utf8
# the above tag defines encoding for this document and is for Python 2.x compatibility
import re
regex = r"(?i)^(Where|How|Is|Does|I wanna|I want|I wish)\b.*\bdemo( game| version( of the game)?)?( exist| available| out there)?(\.|\?|!)*?$"
test_str = ("How can I download the demo\n"
"Where get demo?!?!\n"
"where is the demo version of the game?\n"
"How do I get the demo game!\n"
"Anyone know how to get the demo?\n"
"How does one download a geneshit\n"
"so I was wondering, how do we get more newbies to play the demo\n"
"Does a demo version of the game exist?!?!?\n"
"Is a demo version of the game available\n"
"is a demo version of the game out there\n"
"Is there a demo version?\n"
"I wish there was a demo version\n"
"is a demo out there?")
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