# coding=utf8
# the above tag defines encoding for this document and is for Python 2.x compatibility
import re
regex = r'fmc="(.*?)".*?<part.*?>(.*?)</part>'
test_str = ("<?xml version = \"1.0\" encoding=\"UTF-8\" standalone=\"yes\" ?>\n"
"<corpus>\n"
" <ver id=\"18\" etude=\"EC1_Elec\" elec=\"oui\" niveau=\"1\" critere=\"1.3\" type=\"discours\">\n"
" <part code=\"EC1_Elec_IW04_0\">Ça existe sur des gros parcs Hlm mais c'est macro.</part>\n"
" </ver>\n"
" <ver id=\"30\" etude=\"EC1_Elec\" elec=\"oui\" niveau=\"2\" critere=\"\" origine=\"IW\" type=\"discours\" fmc=\"motives\">\n"
" <part code=\"EC1_Elec_IW01_0\">Avant 75 on n'a pas isolé puis après, au fur et à mesure des règlementations.</part>\n"
" </ver>\n"
" <ver id=\"54\" etude=\"EC1_Elec\" elec=\"oui\" niveau=\"1\" critere=\"\" origine=\"IW\" type=\"discours\" fmc=\"condition\">\n"
" <part code=\"EC1_Elec_IW10_0\">Le deuxième boitier, il est où ? s'il y en a un qui est à l'intérieur et qui remplace un bout de l'isolation, il est caché OK.</part>\n"
" </ver>\n"
" <ver id=\"897\" etude=\"EC3_Elec\" elec=\"oui\" niveau=\"4\" critere=\"4.1\" origine=\"TR\" type=\"discours\" fmc=\"obstacle\">\n"
" <part code=\"EC3_Elec_TR2_1\">Avec l'économie d'énergie, on va imposer de plus en plus d'automatismes,</part>\n"
" <iwer>Çava influencer la demande pour ce type de solution c'est ça ?</iwer>\n"
" <part code=\"EC3_Elec_TR2_1\">Je pense oui</part>\n"
" </ver>\n"
"</corpus>")
matches = re.finditer(regex, test_str, re.MULTILINE | re.DOTALL)
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