Регулярные выражения для анализа частичной даты ISO8601 и, возможно, определения времени [закрыто]Javascript

Форум по Javascript
Ответить
Anonymous
 Регулярные выражения для анализа частичной даты ISO8601 и, возможно, определения времени [закрыто]

Сообщение Anonymous »

Давайте сначала отфильтровать проблему x /y.
Мне нужно оценить строку ISO8601, например, она может быть частичной, включая только год и месяц или дату без времени. < /p>
Одно из предложенных решений-< /p>

Код: Выделить всё

if (new Date(targetDateAndPossiblyTimeDefinition).toString() !== "Invalid Date") {
console.log("Invalid")
}

Тем не менее, он вернет true для "1970-1-01" Что он не действителен iso8601 строка. Поэтому я думаю, что решением будет набор регулярных выражений: < /p>

Код: Выделить всё

if (
[
/\d{4}/gu,
/\d{4}-\d{2}/gu,
/\d{4}-\d{2}-\d{2}/gu,
/\d{4}-\d{2}-\d{2}T\d{2}/gu,
/\d{4}-\d{2}-\d{2}T\d{2}:\d{2}/gu,
/\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}.\d{3}Z/gu
].some(
(regularExpression: RegExp): boolean => regularExpression.test()
);
) {
console.log("Valid!")
}
Тереза не хватает паттернов?


Подробнее здесь: https://stackoverflow.com/questions/797 ... ime-defini
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Javascript»