Я пытаюсь извлечь дату из текстовых данных, используя регулярное выражение, но регулярное выражение, которое я использую, ничего не возвращает.Использование регулярного выражения не удалось получить ожидаемый формат даты
РНР код, я использую для извлечения даты из строки:
<?php
preg_match("/(\w\w\w)\,(\w\w\w) (\d\d)\,(\d\d\d\d) at (\d\d)\:(\d\d) ([A|P]M)/", $input_line, $output_array);
?>
ввода строки выборки:
kardashian, kim this is dummy text area
mercury, freddie Tue, Aug 23, 2016 at 2:21 PM
22.11.2016 08:58 AM
last_name, first_name
bjorge, philip
Ожидаемый результат:
Tue, Aug 23, 2016 at 2:21 PM
Пожалуйста, дайте мне знать, почему мое регулярное выражение не работает.
Заранее за вашу помощь.
Обратите внимание на пробелы (вам не хватает одного после первой запятой и у вас слишком много до AM/PM). –
'/ (\ w {3}), (\ w {3}) (\ d {1,2}), (\ d {4}) в (\ d {1,2}): (\ d { 2}) ([AP] M)/'- Короче говоря: ваши пробелы не совпадали, и вы ожидали, что часы будут 2 цифры (это всего лишь 1 в вашем примере,' 2: 21') – ccKep