2016-08-16 2 views
0

Пример строки python: '8:30 AM- 10:00 PM Subject: Math'. В общем случае строка содержит время начала, время окончания и объект, который я хочу разделить на эту строку на 3 компонента: время начала, время окончания и объект. Например, 8:30 AM, 10:00 PM и Subject: Math.Как извлечь время из строки в python, используя сопоставление шаблонов?

Как это сделать, используя regex в python?

ответ

2

Вы можете использовать re.split() используя положительный для просмотра назад AM или PM, имеющего дополнительный - и пробел в качестве разделителя:

>>> import re 
>>> 
>>> s = "8:30 AM- 10:00 PM Subject: Math" 
>>> re.split(r"(?<=AM|PM)-?\s", s) 
['8:30 AM', '10:00 PM', 'Subject: Math'] 
Смежные вопросы