0
我在旧的Perl脚本中有这两行。当我编写相当于Python的代码时,我会遇到类似于valueerror的各种错误:无效的\x
转义和有关编码的东西。如何让这些Perl正则表达式与Python兼容?
$line =~ s/[^\x{8}-\x{7B}]/ /ig;
$line =~ s/(Û|²|°|±|É|¹|Í)/ /g;
我需要做些什么才能让他们在Python中工作?
我在旧的Perl脚本中有这两行。当我编写相当于Python的代码时,我会遇到类似于valueerror的各种错误:无效的\x
转义和有关编码的东西。如何让这些Perl正则表达式与Python兼容?
$line =~ s/[^\x{8}-\x{7B}]/ /ig;
$line =~ s/(Û|²|°|±|É|¹|Í)/ /g;
我需要做些什么才能让他们在Python中工作?
我不是用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)
对于编码问题,如果你想直接把Unicode字符在你的源,你需要确保Python解释器知道你的文件编码是什么。请参阅:
感谢奏效 – Incognito 2010-01-11 01:06:32