gpt4 book ai didi

python - python 的正则表达式

转载 作者:太空狗 更新时间:2023-10-30 02:44:34 24 4
gpt4 key购买 nike

我有一个棘手的正则表达式,但我无法成功实现它。

我需要正则表达式:

AEBE52E7-03EE-455A-B3C4-E57283966239

我用它来进行这样的识别:

url(r'^user/(?P<identification>\<regular expression>)$', 'view_add')

我尝试了一些像这样的表达方式:

\[A-Za-z0-9]{8}^-{1}[A-Za-z0-9]{4}^-{1}[A-Za-z0-9]{4}^-{1}[A-Za-z0-9]{4}^-{1}[A-Za-z0-9]{12}
\........^-....^-....^-....^-............

有人可以帮助我吗?

谢谢。

最佳答案

只需删除正则表达式中出现的所有 ^ 符号即可。

>>> s = 'AEBE52E7-03EE-455A-B3C4-E57283966239'
>>> re.match(r'[A-Za-z0-9]{8}-[A-Za-z0-9]{4}-[A-Za-z0-9]{4}-[A-Za-z0-9]{4}-[A-Za-z0-9]{12}$', s)
<_sre.SRE_Match object; span=(0, 36), match='AEBE52E7-03EE-455A-B3C4-E57283966239'>
>>> re.match(r'[A-Za-z0-9]{8}-[A-Za-z0-9]{4}-[A-Za-z0-9]{4}-[A-Za-z0-9]{4}-[A-Za-z0-9]{12}$', s).group()
'AEBE52E7-03EE-455A-B3C4-E57283966239'

-{1} 会写成 - 似乎所有分隔的单词都是十六进制代码。所以你可以使用 [0-9a-fA-F] 而不是 [A-Za-z0-9]

>>> re.match(r'[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$', s).group()
'AEBE52E7-03EE-455A-B3C4-E57283966239'

关于python - python 的正则表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28904325/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com