Совпадение d-M-Y с регулярным выражением JavaScript, как? - PullRequest
0 голосов
/ 25 мая 2010

мое форматирование даты в PHP - d-M-Y, и я пытаюсь сопоставить даты с регулярным выражением javascript:

s.match(new RegExp(/^(\d{1,2})(\-)(\w{3})(\-)(\d{4})$/))

Для использования с плагином jQuery, tableorter. Проблема в том, что он не работает, и мне интересно, почему нет.

Я попытался удалить дефисы в моем формате date () (d M Y) и попробовал ff, и все заработало:

s.match(new RegExp(/^\d{1,2}[ ]\w{3}[ ]\d{4}$/));

Мой вопрос: каково правильное регулярное выражение, если я использую тире в дате PHP (), т.е. d-M-Y? Спасибо!

Ответы [ 2 ]

0 голосов
/ 25 мая 2010

Я обычно более терпим при сопоставлении дат, поэтому я бы сделал что-то вроде этого:

s.match( /^\s*(\d{1,2})\W+(\w{3})\W+(\d{4})\s*$/ )

(допускать начальные и конечные пробелы и любые не алфавитно-цифровые символы-разделители)

0 голосов
/ 25 мая 2010

Попробуйте заменить его на

s.match(new RegExp("^(\\d{1,2})(\\-)(\\w{3})(\\-)(\\d{4})$"));

или

s.match(/^(\d{1,2})(\-)(\w{3})(\-)(\d{4})$/);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...