繁体   English   中英

Python Regex搜索不显示月份文本

[英]Python Regex search not showing month text

我正在尝试针对RegEx模式验证String,然后从模式搜索中获取月份和年份。 模式匹配很好,我可以看到日期和年份,但是月份为空

import re

txt = '25-Nov-18'
pattern = re.compile('^(\d{1,2})(\/|-)[a-zA-Z]{3}(\/|-)(\d{2})$')
if pattern.match(txt):
    m = pattern.search(txt)
    print(m.group(1), m.group(2), m.group(3), m.group(4))

结果是

25 - - 18

仅供参考:m.group(0)是25-Nov-18

我在这里想念什么吗? 有没有比这更好的方法了?

您只是缺少一些括号,而又缺少另一个组,因此必须将要恢复的所有内容括在括号中。

import re

txt = '25-Nov-18'
pattern = re.compile('^(\d{1,2})(\/|-)([a-zA-Z]{3})(\/|-)(\d{2})$')
if pattern.match(txt):
    m = pattern.search(txt)
    print(m.group(1), m.group(2), m.group(3), m.group(4), m.group(5))

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM