【Python】判断字符串输入合法化

只包含数字

判断字符串是否只包含数字:

1.str.isdecimal() 如果 str 只包含全角数字则返回 True 2.str.isdigit() 如果 str只包含全角数字、unicode 编码的数字字符串 例如⑴、u00b2此类型则返回 True 3.str.isnumeric() 如果 str只包含数字(全角、半角)则返回 True

包含数字

判断字符串是否只包含数字:

print(bool(re.search(rd, "12321sad")))

re.search()方法扫描整个字符串,并返回第一个成功的匹配, (re.search(r’d’, “12321sad”))的结果为12321,bool输出为True

只包含中文

用正则表达式提取中文字符看长度是否和原字符串一致即可

pre = re.compile(u[u4e00-u9fa5])
res = re.findall(pre, str)
if len(str) == len(res):
    return True

包含中文

通过unicode编码来判断

for ch in str:
        if uu4e00 <= ch <= uu9fff:
            return True

只包含字母

isalpha() 方法检测字符串是否只由字母组成 字符串至少有一个字符并且所有字符都是字母则返回 True, 否则返回 False。

str = "rasd";
print str.isalpha();

str = "asd阿萨德";
print str.isalpha();

str = "this is string example....wow!!!";
print str.isalpha();

结果为:

True
False
False

包含字母

for ch in str:
        if (ch >= uu0041 and ch <= uu005a) or (ch >= uu0061 and ch <= uu007a)
            return True
经验分享 程序员 微信小程序 职场和发展