例如:
s = u"中国"
print s.isalpha()
输出竟然为True. 这是什么原因?
那么想判断字符串是否只有字母组成出了正则,还有什么好方法?
PHP中文网2017-04-17 13:38:10
對於unicode string,string.isalpha
會根據字串中的字元是否屬於Unicode編碼的LETTER區域來判斷是否都由字母組成。所以得到的結果為True,不一定表示只有26個英文字母。
正規表示式應該是最簡單的方法了。
當然你也可以:
def isAlpha(word):
try:
return word.encode('ascii').isalpha()
except UnicodeEncodeError:
return False
s = u"中国"
isAlpha(s)