如何将此表达式与regex匹配

2024-04-27 04:57:05 发布

您现在位置:Python中文网/ 问答频道 /正文

如何匹配以下线条:

143abd
559asd
931dgd

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

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

\b0-9a-z\b

Tags: 方法字母数字b0线条
3条回答

我相信下面的正则表达式会对您有用:

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

你必须把开始和结束锚,否则它会做一个部分匹配。你知道吗

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

如果您想同时允许使用大写和小写字母,那么请更改regex,如下所示。你知道吗

^\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

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

相关问题 更多 >