2024-09-29 02:19:44 发布
网友
我有个问题。如何检查python字符串是否包含不在给定列表中的字符
以下是列表(集合):
set("ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-._")
您想测试字符串中的字符是否是给定字符集的子集。这在Python中很简单,因为<=操作符测试一个集合是否是另一个集合的子集
<=
import string # don't use a mutable set for this purpose GIVEN = frozenset(string.ascii_letters + string.digits + '-._') def uses_other_chars(s, given=GIVEN): return not set(s) <= given
示例:
>>> uses_other_chars('abc') False >>> uses_other_chars('Hello!') True
在验证字符串时,我总是遵从正则表达式
要创建集合,请将集合中的所有字符括在[]中。 要检查字符串是否包含任何字符集中的而不是,请在开头添加^。 要检查字符串是否包含集合的一个或多个成员,请附加+
[]
^
+
给定此信息,用于检查字符串是否包含除{a,b,c,d}以外的任何字符的正则表达式如下所示:
[^abcd]+(注意这是区分大小写的)
[^abcd]+
要在python中使用正则表达式,import re。re.search(pattern, string, flags=0)方法将在整个字符串中查找您给出的模式
import re
re.search(pattern, string, flags=0)
有关python中正则表达式的更多信息,请参见here。可以在here找到一个简单的正则表达式测试程序
any
SET = set("ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-._") s = "123#" print(any(x not in SET for x in s))
您想测试字符串中的字符是否是给定字符集的子集。这在Python中很简单,因为
<=
操作符测试一个集合是否是另一个集合的子集示例:
在验证字符串时,我总是遵从正则表达式
要创建集合,请将集合中的所有字符括在
[]
中。 要检查字符串是否包含任何字符集中的而不是,请在开头添加^
。 要检查字符串是否包含集合的一个或多个成员,请附加+
给定此信息,用于检查字符串是否包含除{a,b,c,d}以外的任何字符的正则表达式如下所示:
[^abcd]+
(注意这是区分大小写的)要在python中使用正则表达式,
import re
。re.search(pattern, string, flags=0)
方法将在整个字符串中查找您给出的模式有关python中正则表达式的更多信息,请参见here。可以在here找到一个简单的正则表达式测试程序
any
签入字符串中每个字符的集合相关问题 更多 >
编程相关推荐