![](/img/trans.png)
[英]How to check if a string contains only specific characters in python?
[英]how to check in python if a string contains characters only form specific code page?
我知道python只使用utf8進行字符串編碼,但是如果我需要將數據發送到非unicode的舊應用程序並且僅支持windows代碼頁中包含的這些字符,如windows-1251(cyrylic)等。所以這里我想檢測utf-8字符串是否包含任何不能由給定代碼頁表示的字符。
blah
是你的字符串, ascii
是你的編碼:
blah = u'\uffff'
try:
blah.encode('ascii')
except UnicodeEncodeError:
# nope - can't do it...
有用於編碼檢測的lib: https : //pypi.python.org/pypi/chardet ( Python中的字符編碼自動檢測。與瀏覽器一樣智能。開源 )
檢測...
來自docs的示例:
>>> import urllib
>>> rawdata = urllib.urlopen('http://yahoo.co.jp/').read()
>>> import chardet
>>> chardet.detect(rawdata)
{'encoding': 'EUC-JP', 'confidence': 0.99}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.