如何使这些Perl regexs与Python兼容?

2024-04-20 00:53:29 发布

您现在位置:Python中文网/ 问答频道 /正文

我在一个旧的Perl脚本中有这两行代码。当我编写Python等价物时,会出现各种各样的错误,比如valueerror:invalid\xescape,以及有关编码的内容。你知道吗

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

我需要做什么才能让它们在Python中工作?你知道吗


Tags: 代码脚本内容编码错误lineperlvalueerror
2条回答

我对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解释器知道您的文件编码是什么。请参见:

相关问题 更多 >