Я пытаюсь составить оператор регулярного выражения для сопоставления в каждом из приведенных ниже форматов даты.
* Mar 7, 2017
Mar. 7, 2017
* March 7, 2017
3-7-2017
03-07-2017
3-7-17
03-07-17
* 03/7/2017
* 03/07/17
* 3/7/17
Mar-07-2017
Mar-7-2017
March-07-2017
Приведенное ниже регулярное выражение сопоставляется в форматах даты, обозначенных звездочкой выше.Я тщетно пытался добавить к тому, что у меня уже есть, но безуспешно.
([0-9] +) / ([0-9] +) / ([0-9] +) | ([12] \ d {3} - (0 [1]-9] | 1 [0-2]) - (0 [1-9] | [12] \ д | 3 [01])) | \ W + \ s \ d {2}, \ s \ d {4}(? я) | \ б (: Ян (?:? uary) | Февраль (: ruary) | Mar (???? ч) | Апрель (?:? иль) | май | Июнь (? е)? | июль (? у) |? август (: усть?) | сентябрь? (? тябрь) |? октябрь (?: обер) |? ноябрь (?: уголек) |? декабрь] (?: уголек)?) \ b (?: 0? [1-9] | [1-2] [0-9] | 3 [01]) ,?\ d {4}
Любая помощь всегда приветствуется!
* Бонусный вопрос *
В некоторых случаях может быть несколькодата соответствует, и мне нужно, чтобы найти соответствие после определенного слова.В прошлом я использовал приведенный ниже синтаксис, заключая выражение regex в круглые скобки после точки.
(?<=Word).(StatementHere)