如何将此表达式与正则表达式匹配

时间:2014-11-19 02:54:11

标签: python regex match

如何匹配以下行:

143abd
559asd
931dgd

这些行总是有三个数字,然后是三个字母

我正在尝试用Python编写这个正则表达式。到目前为止,我尝试了以下内容:

\b0-9a-z\b

3 个答案:

答案 0 :(得分:1)

我相信以下正则表达式适合您:

import re
re.findall("^[0-9]{3}[a-zA-Z]{3}$", yourString)

答案 1 :(得分:1)

你必须放置开始和结束锚点,否则它会进行部分匹配。

^\d{3}[a-z]{3}$

如果您想同时允许使用大写和小写字母,请按以下方式更改正则表达式。

^\d{3}[a-zA-Z]{3}$

代码:

>>> import re
>>> s = """143abd
... 559asd
... 931dgd
... 8765dgb"""
>>> for i in re.findall(r'(?m)^\d{3}[a-zA-Z]{3}$', s):
...     print(i)
... 
143abd
559asd
931dgd

答案 2 :(得分:0)

以上字符串与^\d{3}[a-zA-Z]{3}$匹配,您可以编写并验证自己的正则表达式here。当我需要一个正则表达式时,我在那里编译并检查它。