gpt4 book ai didi

python - 正则表达式如何匹配一致的标志?

转载 作者:太空狗 更新时间:2023-10-30 02:53:51 25 4
gpt4 key购买 nike

我正在使用 python 正则表达式来匹配以下形式的日期:1999-01-01 或 1999.1.1 或 1999-1-1。但不是像 1999.1-1 或 1999-1.1 这样的。年月日之间的符号必须一致。我使用以下代码来完成它,这很困惑。有更好的方法吗?

import regex as re
re.fullmatch('(((((19|20)\d\d-(([1-9])|((0[1-9]|1[012])))-(?p)([1-9]|(0[1-9]|[12][0-9]|3[01]))(\.)?))))|' \
'(((((19|20)\d\d\/(([1-9])|((0[1-9]|1[012])))/(?p)([1-9]|(0[1-9]|[12][0-9]|3[01]))(\.)?))))|'\
'(((((19|20)\d\d\.(([1-9])|((0[1-9]|1[012])))\.(?p)([1-9]|(0[1-9]|[12][0-9]|3[01]))(\.)?))))','1999.1.1')

最佳答案

你可以使用

\d{4}([-/.])\d{1,2}\1\d{1,2}

参见 a demo on regex101.com .这里的线索是使用反向引用。

关于python - 正则表达式如何匹配一致的标志?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48072603/

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