Python:检测unicode

时间:2012-07-25 04:37:04

标签: python regex unicode

我正在使用Python的re模块来审查一些文本。我必须审查ASCII和Unicode文本,所以如果文本是Unicode,我需要设置re的Unicode标志。有没有办法可以检测文本是否为Unicode?

3 个答案:

答案 0 :(得分:2)

ASCII是Unicode的一个子集,您不必做任何事情 - 除非您有理由怀疑您的文本既不是ASCII也不是Unicode(例如Windows CP 1252等),只需通过defaut使用Unicode。 / p>

答案 1 :(得分:0)

你可以使用

 isinstance( s, unicode)

查看对象是否为unicode。但是,如果您将所有字符串都作为编码 unicode,那么您需要知道编码。对于可能成为噩梦的电子邮件处理应用程序。在过去,我已经使用了chardet

答案 2 :(得分:0)

您可以尝试text.decode('utf-8'),如果成功没有错误,则文本是UTF-8编码的Unicode(其中纯ASCII是子集)。如果它是其他任何东西,即代码页,它可能会引发异常。