2017-02-20 50 views
1

Я работаю над Sublime Text 3 с большим текстовым файлом, в котором есть записи, разделенные строками. Я ищу регулярное выражение, которое будет:Regex соответствует форматам даты DD-MM-YYYY и DD/MM/YYYY

  • записи матча, которые появляются в формате DD-MM-YYYY
  • записи Match, которые отображаются в формате

DD/MM/YYYY Если оба были бы слишком сложным, то просто первый пример будет делать.

Я не сделал ничего, чтобы работать с таким регулярным выражением, потому что это честно, намного выше моего знания об этом, и я не знаю, с чего начать, и, глядя на похожие ответы, касающиеся проверки правильности форматов даты, подтверждает это подозрениями для меня.

Заранее благодарим за любую помощь.

ответ

3

Это регулярное выражение соответствует вашему примеру:

[0-9]{2}[-|\/]{1}[0-9]{2}[-|\/]{1}[0-9]{4} 

, но если вы пишете неправильную дату (например, 31 февраля) это регулярное выражение матч это.

+0

отлично работает! Спасибо. – Hashim

+0

Это также не принимает 'dd-mm/yyyy' и' dd/mm-yyyy'? Если это так, даже если оно может быть достаточно хорошим, оно не делает то, что задает вопрос, и не упоминает об этом факте, поэтому может ввести в заблуждение читателей. – hvd

2

Этот шаблон будет работать для вашего conditon. Строго не допускается месяц до настоящего времени и наоборот.

^([0]?[1-9]|[1|2][0-9]|[3][0|1])[./-]([0]?[1-9]|[1][0-2])[./-]([0-9]{4}|[0-9]{2})$ 

Эта модель будет соответствовать эти форматы: (дата, месяц, год)

25.04.2017 
02.04.2017 
2.4.2017 

25/04/2017 
5/12/2017 
15/2/2017 

25-04-2017 
6-10-2017 
16-5-2017 
+0

Это хороший ответ на другой вопрос, но на самом деле это не ответ на этот вопрос. – hvd

 Смежные вопросы

  • Нет связанных вопросов^_^