У меня много HTML-файлов содержит дату в формате July 29th, 2011
Я хочу изменить формат даты July 29th, 2011
на 20110729
, December 9th, 2010
на 20101209
и т. Д.
Я думаю, что sed
может работать, но все еще не может найти решение из-за его косвенной последовательности.
text-processing
sed
Наджиб-ботак Чин
источник
источник
Ответы:
Подобные вещи намного сложнее, чем должно быть с большинством инструментов.
awk
Модуль GNU и POSIX Perl оба дают вамstrftime()
, но не даютstrptime()
, что вам нужно.В любом случае, с Perl все еще довольно просто ...
Очевидно, это еще не все, поскольку вы действительно хотите конвертировать HTML. Если вы можете найти регулярное выражение с помощью sed, которое будет работать для поиска строк дат, вы сможете сделать что-то очень похожее с Perl.
источник
Date::Manip
модуль? ... Мой Perl выдает ошибку "Не удается найти Date / Manip.pm в @INC ..." . Это дополнительный модуль мне нужно как-то установить? ... Я использую Perl, v5.10.1perl-Date-Manip
но ваше будет отличаться. Вы также можете получить его с помощьюcpan
.libdate-manip-perl
... @ Стивен Притчард: Это хорошее решение ... Спасибо.July 29th, 2011
она не является общепризнанным форматом (July 29, 2011
работает), и вам нужно было бы добавить немало инфраструктуры shell и sed / awk.