Python字母数字正则表达式

2022-02-27 00:00:00 python regex match

问题描述

下面我有以下正则表达式:

alphanumeric = compile('^[wd ]+$')

我正在对此正则表达式运行当前数据:

Tomkiewicz Zigomalas Andrade Mcwalters 

我使用单独的正则表达式仅标识字母字符,但上面的数据仍符合字母数字条件。

编辑:如何停止与上面的正则表达式匹配的唯一Alpha数据?


解决方案

说明:可以有两种形式:

  1. 以数字字符开头,然后应该有一些字符,后面可以有任意数量的字母数字字符。
  2. 可以从字母开始,然后是一些数字,后跟任意数量的字母数字字符。

演示:

>>> an_re = r"(d+[A-Z])|([A-Z]+d)[dA-Z]*"
>>> re.search(an_re, '12345', re.I) # not acceptable string
>>> re.search(an_re, 'abcd', re.I) # not acceptable string 
>>> re.search(an_re, 'abc1', re.I) # acceptable string 
<_sre.SRE_Match object at 0x14153e8>
>>> re.search(an_re, '1abc', re.I)
<_sre.SRE_Match object at 0x14153e8>

相关文章