如果除了下划线_之外不包含任何特殊字符,我只能在程序中使用字符串.我怎么检查这个?
我尝试使用unicodedata库.但是特殊字符刚被标准字符所取代.
解决方法:
你可以使用string.punctuation和任何这样的函数
import string
invalidChars = set(string.punctuation.replace("_", ""))
if any(char in invalidChars for char in word):
print "Invalid"
else:
print "Valid"
有了这条线
invalidChars = set(string.punctuation.replace("_", ""))
我们正在准备一个不允许的标点字符列表.如果你想要_被允许,我们将从列表中删除_并将新集准备为invalidChars.因为查找在集合中更快.
如果至少有一个字符在invalidChars中,则任何函数都将返回True.
word = "Welcome"
import re
print "Valid" if re.match("^[a-zA-Z0-9_]*$", word) else "Invalid"
标签:python,string
来源: https://codeday.me/bug/20190927/1822626.html