import re
regex = re.compile(r"(\"ControlLabel\": \")(.*)(\",\n\s*)(\"ControlOptions\":.*)(Select all that apply:\\r\\n)(.*)(\n\s*\"ControlType\": \")(OneResponse\")", flags=re.MULTILINE)
test_str = (" }, {\n"
" \"ControlLabel\": \"How the post-op instructions were given\",\n"
" \"ControlOptions\": \"Select all that apply:\\r\\ncomputer generated\\r\\nverbal\\r\\nwritten\",\n"
" \"ControlType\": \"OneResponse\",\n"
" \"Descript\": \"Post-Op Instructions\"\n"
" }, {\n"
" \"ControlLabel\": \"The degree of scaling\",\n"
" \"ControlOptions\": \"general\\r\\nlight\",\n"
" \"ControlType\": \"MultiResponse\",\n"
" \"Descript\": \"Prophy Scaling\"\n"
" }, {\n"
" \"ControlLabel\": \"The quadrants\",\n"
" \"ControlOptions\": \"Select all that apply:\\r\\nUpper Right\\r\\nUpper Left\\r\\nLower Right\\r\\nLower Left\",\n"
" \"ControlType\": \"OneResponse\",\n"
" \"Descript\": \"Quadrant-Select Multiple\"")
subst = "\\1\\2. Select all that apply.\\3\\4\\6\\7MultiResponse\""
result = regex.sub(subst, test_str)
if result:
print(result)
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