Код: Выделить всё
a "timestamp" + "user name" + ":" + "text"
Код: Выделить всё
/8:08:57/Имя пользователя вводится вручную тем, кто использует сервер, а «текст» — это сообщение, которое человек отправляет, оно может быть настолько длинным или коротким, насколько он хочет, может иметь табуляции, новые строки и т. д.
Это предварительный просмотр только одной ячейки информации в моем наборе данных:
Код: Выделить всё
import pandas as pd
text = """
(19:04:45) Server 526.785 : Ongoing Push
(19:08:46) Main Deck : Operation was not uploaded the error code will be
55-858-658-458
No More Handing is needed
(19:50:46) Server UJI-OP : Reset Deck main
OP may take up to 6 mins or more...
(19:51:46) Server UJI-OP : Main Deck status ON
please stand up for opening doors
23:20:04 Jill : Windows Closed
5:16:58 Carl V: Is someone on the Front door?
(17:11:49) IUJO-66 : No Response on Deck (5:10:43) Van UHJ : Flights delay 8:34:08 H2047: Buy Concert Tickets 9:05:42 Mark P.: Gen. OK
7:00:15 Jill : Status not ok updated 21:22:34 YHXO: Front desk clear
"""
df = pd.DataFrame({'plain text': [text]})
время
пользователь
text_sent
19:08:46
Основная панель
Операция не была загружена, код ошибки будет 55-858-658-458 Никакой дополнительной обработки не требуется
19:04:45
Сервер 526.785
Текущий push
19:50:46
Сервер UJI-OP
Сбросить основную часть колоды
Базово каждая часть информации будет помещена в отдельный столбец, и мы зафиксируем весь отправленный текст. (Я показал только несколько строк желаемого вывода, чтобы не перегружать экран)
Я использую это регулярное выражение:
Код: Выделить всё
"(?P\d+:\d+:\d+)\S*\s+(?P[^:]+?)\s*:\s*(?P.*?)(?=\s*\S*\d+:\d+:\d+|$)"

Некоторые сообщения пропускаются, хотя они соответствуют моему регулярному выражению
Вот регулярное выражение: https://regex101.com/r/G0rdpa/1
Как я могу изменить это, чтобы собирать всю информацию?
Подробнее здесь: https://stackoverflow.com/questions/770 ... informatio
Мобильная версия