import re
p = re .compile ( r'(?P<prefix>(?:\b u8|\b [LuU])?)(?:"(?P<dbl>[^"\\ ]*(?:\\ .[^"\\ ]*)*)"|\' (?P<sngl>[^\' \\ ]*(?:\\ .[^\' \\ ]*)*)\' )|R"([^"(]*)\( (?P<raw>.*?)\) \4 "' )
s = "\" text'\\ \" here\" \n L'text\\ '\" here'\n u8\" text'\\ \" here\" \n u'text\\ '\" here'\n U\" text'\\ \" here\" \n R\" delimiter(text\" '\" here)delimiter\" "
print ( s)
print ( '--------- Regex works below ---------' )
for x in p.finditer ( s) :
if x.group ( "dbl" ) :
print ( x.group ( "dbl" ) )
elif x.group ( "sngl" ) :
print ( x.group ( "sngl" ) )
else :
print ( x.group ( "raw" ) )
aW1wb3J0IHJlCgpwID0gcmUuY29tcGlsZShyJyg/UDxwcmVmaXg+KD86XGJ1OHxcYltMdVVdKT8pKD86Iig/UDxkYmw+W14iXFxdKig/OlxcLlteIlxcXSopKikifFwnKD9QPHNuZ2w+W15cJ1xcXSooPzpcXC5bXlwnXFxdKikqKVwnKXxSIihbXiIoXSopXCgoP1A8cmF3Pi4qPylcKVw0IicpCnMgPSAiXCJ0ZXh0J1xcXCJoZXJlXCJcbkwndGV4dFxcJ1wiaGVyZSdcbnU4XCJ0ZXh0J1xcXCJoZXJlXCJcbnUndGV4dFxcJ1wiaGVyZSdcblVcInRleHQnXFxcImhlcmVcIlxuUlwiZGVsaW1pdGVyKHRleHRcIidcImhlcmUpZGVsaW1pdGVyXCIiCnByaW50KHMpCnByaW50KCctLS0tLS0tLS0gUmVnZXggd29ya3MgYmVsb3cgLS0tLS0tLS0tJykKZm9yIHggaW4gcC5maW5kaXRlcihzKToKCWlmIHguZ3JvdXAoImRibCIpOgoJCXByaW50KHguZ3JvdXAoImRibCIpKQoJZWxpZiB4Lmdyb3VwKCJzbmdsIik6CgkJcHJpbnQoeC5ncm91cCgic25nbCIpKQoJZWxzZToKCQlwcmludCh4Lmdyb3VwKCJyYXciKSk=