Python正则表达式文本和时间相同

2024-03-29 06:29:27 发布

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

我想弄一份NHL的时间表,它的格式是:

    tabindex="1" >Game: Wild at Blackhawks 8:00PM ET</a>

我可以像这样抓住它:

    tabindex="1" >Game: (.)(.*?) at (.)(.*?)</a>

这将获取团队名称的第一个字母,然后是其他字母(着色目的)加上开始时间

我尝试了以下我在这里找到的帖子的变体:

    (?:(?:(\d+):)?(\d+):)?(.+?)$ (ET|PT)

不过,我想抓紧时间,上午/下午,和ET分别为着色以及。让我感到困惑的是,如何抓取文本和日期,并在一行中紧跟其后。任何帮助都将不胜感激,谢谢


Tags: 目的名称game格式字母时间时间表团队
2条回答

这个怎么样:

>>> s = 'tabindex="1" >Game: Wild at Blackhawks 8:00PM ET</a>'
>>> m = re.search(r'tabindex="1" >Game: (\w)(\w*?) at (\w)(\w*?) (\d+:\d\d)(\w\w) (\w\w)</a>', s)
>>> m.groups(0)
('W', 'ild', 'B', 'lackhawks', '8:00', 'PM', 'ET')

试着在下面抓取时间,上午/下午,ET或PT-

>>>re.findall(r'([\d:]*)([A-Z]+)\s*([A-Z]+)(?=</a>)','tabindex="1" >Game: Wild at Blackhawks 8:00PM ET</a>')
>>>[('8:00', 'PM', 'ET')]

LIVEDEMO

相关问题 更多 >