Python – How to make these Perl regexs Python compatible

perlpythonregex

I have these two lines in an old Perl script. When I write the Python equivalent I get all sorts of errors like valueerror: invalid \x escape, and stuff about encoding.

$line =~ s/[^\x{8}-\x{7B}]/ /ig;
$line =~ s/(Û|²|°|±|É|¹|Í)/ /g;

What do I need to do to get them working in Python?

Best Answer

I'm not too great with Perl regex but I think I may have solved it:

invalid_range = re.compile(r'[^\x08-\x7B]', re.I)
invalid_unicode = re.compile(ur'(Û|²|°|±|É|¹|Í)')
line = re.sub(invalid_range , '', line)
line = re.sub(invalid_unicode, '', line)