Regex substitution trouble

Eugene hexumg at gmail.com
Wed Nov 5 11:44:35 CET 2014


massi_srb at msn.com wrote:

> Hi everyone,
> 
> I'm not really sure if this is the right place to ask about regular
> expressions, but since I'm usin python I thought I could give a try 
:-)
> Here is the problem, I'm trying to write a regex in order to 
substitute
> all the occurences in the form $"somechars" with another string. This 
is
> what I wrote:
> 
> newstring = re.sub(ur"""(?u)(\$\"[\s\w]+\")""", subst, oldstring)
> 
> This works pretty well, but it has a problem, I would need it also to
> handle the case in which the internal string contains the double 
quotes,
> but only if preceeded by a backslash, that is something like
> $"somechars_with\\"doublequotes". Can anyone help me to correct it?
> 
> Thanks in advance!
Hi!

Next snippet works for me:

re.sub(r'\$"([\s\w]+(\\")*[\s\w]+)+"', 'noop', r'$"te\"sts\"tri\"ng"')




More information about the Python-list mailing list