Шаблон использования re.compile(r",|\-|\:\s+")
Пример:
import re
data = [['15/09/16, 12:21 pm - User1: Hey'],
['15/09/16, 12:22 pm - User2: <Media omitted>'],
["15/09/16, 12:22 pm - User2: It's yesterday's work"],
['15/09/16, 12:22 pm - User1: Gotta work on it.']]
regexPattern = re.compile(r",|\-|\:\s+")
for i in data:
for j in i:
print(regexPattern.split(j))
Выход:
['15/09/16', ' 12:21 pm ', ' User1', 'Hey']
['15/09/16', ' 12:22 pm ', ' User2', '<Media omitted>']
['15/09/16', ' 12:22 pm ', ' User2', "It's yesterday's work"]
['15/09/16', ' 12:22 pm ', ' User1', 'Gotta work on it.']
Использование группировки Regex.
Демонстрация:
import re
data = [['15/09/16, 12:21 pm - User1: Hey'],
['15/09/16, 12:22 pm - User2: <Media omitted>'],
["15/09/16, 12:22 pm - User2: It's yesterday's work"],
['15/09/16, 12:22 pm - User1: Gotta work on it, what,hello.']]
regexPattern = re.compile(r"(?P<date>\d{2,}\/\d{2,}\/\d{2,}),\s*(?P<time>\d{2,}:\d{2,}\s*[a-z]{2,})\s*\-\s*(?P<user>\w+)\:\s*(?P<msg>.*)$")
for i in data:
for j in i:
print(regexPattern.match(j).groups())
Вывод:
('15/09/16', '12:21 pm', 'User1', 'Hey')
('15/09/16', '12:22 pm', 'User2', '<Media omitted>')
('15/09/16', '12:22 pm', 'User2', "It's yesterday's work")
('15/09/16', '12:22 pm', 'User1', 'Gotta work on it, what,hello.')