import re
regex = re.compile(r"^.*?(IDC\w*)[\s\S]*?(?:$|(,\n.*$))(\n|$)", flags=re.MULTILINE | re.IGNORECASE)
test_str = (" LTEXT \"Width\",IDC_WIDTH_TEXT,203,74,22,10\n"
" EDITTEXT IDC_WIDTH_IN,244,73,57,12,ES_AUTOHSCROLL | WS_GROUP\n"
" CONTROL \"Manually scale instances and paper\",IDC_RAD_PSCALE_KEYIN,\n"
" \"Button\",BS_AUTORADIOBUTTON | WS_GROUP | WS_TABSTOP,15,89,132,10\n"
" CONTROL \"Keep drawing instance scale 1.0\",IDC_RAD_PSCALE_AUTO,\n"
" \"Button\",BS_AUTORADIOBUTTON,15,104,123,10\n"
" CONTROL \"Keep drawing paper scale 1.0\",IDC_RAD_ISCALE_AUTO,\n"
" \"Button\",BS_AUTORADIOBUTTON,15,119,118,10")
subst = "$1\\n"
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