2010-01-10 53 views
0

我在旧的Perl脚本中有这两行。当我编写相当于Python的代码时,我会遇到类似于valueerror的各种错误:无效的\x转义和有关编码的东西。如何让这些Perl正则表达式与Python兼容?

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

我需要做些什么才能让他们在Python中工作?

回答

1

我不是用Perl的正则表达式太大,但我想我可能已经解决了它:

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) 
+0

感谢奏效 – Incognito 2010-01-11 01:06:32