Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Как найти и преобразовать дату в строке? (https://javascript.ru/forum/misc/17945-kak-najjti-i-preobrazovat-datu-v-stroke.html)

Sergey_New 09.06.2011 21:41

Как найти и преобразовать дату в строке?
 
Строка: ля ля итп 9 JUN 2011 ляляля итд
Нужно получить: ля ля итп 09.06.2011 ляляля итд

dmitriymar 09.06.2011 22:11

регулярки
http://javascript.ru/basic/regular-expression
http://javascript.ru/RegExp

Sergey_New 09.06.2011 22:28

dmitriymar,
Там, вроде, вопросы не преветствуются...
Может для даты есть готовые патерны?

Aetae 09.06.2011 22:32

Нужно готовое - гугли.

dmitriymar 09.06.2011 22:37

Sergey_New,
прочитай,пойми.не выйдет сделай тестовый и задай вопросы на форуме.а там это этот -же сайт-раздел учебные материалы.
ну или иди сразу в раздел РАБОТА этого Форума

Sweet 09.06.2011 22:39

Sergey_New, если ты сам решишь эту проблему (не напишешь х**ню и сразу на форум, а доведешь дело до конца), то ты разберешься с этой темой и это тебе уж точно не помешает. Удачи! Но если ты признаешь, что ты дебил и умишка у тебя на это не хватит, тебе дадут решение за честность;)

Sergey_New 09.06.2011 23:04

Sweet, нравишься ты мне за свою доброту :)
А без унижений никак, Профессор? Даже если есть готовые решения для стандартной ситуации?

рони 10.06.2011 01:37

Вариант ...
var str = "ля ля итп 9, Jun ,2011 ляляля итд 9 JUNE 2011 итд JUN 9  2011 итд  2011 JUN  9 итд 2011 June, 09 не дата 90 JUN 2011 ";
var data_reg = /((^|\s|,)+(\d{1,2}|(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)\w*|\d{4})){3}(?=\s+|$)/mig;
str = str.replace(data_reg, function (b) {
    var a = Date.parse(b);
    return a ? (a = new Date(a), ' '+(a.getDate() < 10 ? "0" + a.getDate() : a.getDate()) + "." + (a.getMonth() + 1 < 10 ? "0" + (a.getMonth() + 1) : a.getMonth() + 1) + "." + a.getFullYear()) : b
});
alert(str);

Sergey_New 10.06.2011 09:31

рони, большое спасибо!
Попробую разобраться.
Добавил:
Поясните, пожалуйста, для какого случая требуется "," в ((^|\s|,)


Часовой пояс GMT +3, время: 14:11.