Как извлечь время из текста с помощью регулярных выражений в Google Sheets - PullRequest
0 голосов
/ 22 февраля 2020

Мне нужно получить значения времени из этой строки:

SomeText 02/02/2020 9:00 AM-02/02/2020 9:15 AM;"Text" 02/02/2020 10:45 AM-02/02/2020 11:15 AM;"Text" 02/02/2020 12:45 PM-02/02/2020 1:00 PM;

Шаблон и длина не согласованы. Но время всегда приходит после даты.

Есть предложения?

Ответы [ 2 ]

1 голос
/ 22 февраля 2020

Проверьте, работает ли это

=regexextract(J7, rept("\s(\d+:\d+\s[AP]M).+", len(J7)-len(substitute(J7, ":",))))

Example

Примечание: чтобы преобразовать возвращаемые значения в число, попробуйте

=ArrayFormula(regexextract(J7, rept("\s(\d+:\d+\s[AP]M).+", len(J7)-len(substitute(J7, ":",))))+0)

и отформатируйте вывод по желанию.

1 голос
/ 22 февраля 2020

Вы можете использовать

\d+:\d+ [AP]M

См. демо на regex101.com .

...