如何检查字符串在Python中是否仅包含某些字符?

您可以使用Sets检查字符串是否仅包含某些字符结果。使用您要允许的字符声明一组。例如,如果我们要检查字符串是否仅包含1、2、3和4,则可以使用-

示例

from sets import Set
allowed_chars = Set('1234')
validationString = '121'
if Set(validationString).issubset(allowed_chars):
    print True
else:
    print False

输出结果

这会给你结果-

True

您也可以将正则表达式用于相同的结果。对于仅匹配1、2、3和4,我们可以使用正则表达式调用re.match(regex,string):“ ^ [1234] + $”。 

 例

import re
print(bool(re.match('^[1234]+$', '123abc')))
print(bool(re.match('^[1234]+$', '123')))

输出结果

False
True

 请记住,正则表达式对某些字符有特殊用途,因此需要转义它们。re.match返回一个对象,以检查它是否存在,我们需要使用将其转换为布尔值bool()

猜你喜欢