在Python中,如何检查字符串是否包含字母或数字?

问题描述 投票:0回答:4

如果字符串包含字母或数字,则返回 true。否则,返回 false。

我必须这样做,对吧?

return re.match('[A-Z0-9]',thestring)
python regex
4个回答
18
投票

使用

thestring.isalnum()
方法。

>>> '123abc'.isalnum()
True
>>> '123'.isalnum()
True
>>> 'abc'.isalnum()
True
>>> '123#$%abc'.isalnum()
>>> a = '123abc' 
>>> (a.isalnum()) and (not a.isalpha()) and (not a.isnumeric())
True
>>> 

5
投票

如果您想检查ALL字符是否为字母数字:

  • string.isalnum()
    (正如@DrTyrsa指出的),或者
  • bool(re.match('[a-z0-9]+$', thestring, re.IGNORECASE))

如果您想检查是否存在至少一个字母数字字符:

import string
alnum = set(string.letters + string.digits)
len(set(thestring) & alnum) > 0

bool(re.search('[a-z0-9]', thestring, re.IGNORECASE))


2
投票

这可能需要一段时间,但如果你想弄清楚字符串是否至少有 1 个字母或数字,我们可以使用

re.match('.\*[a-zA-Z0-9].\*', yourstring)

0
投票

怎么样

stringsample.isalpha() 

方法?

© www.soinside.com 2019 - 2024. All rights reserved.