Я пытаюсь улучшить текущее регулярное выражение, соответствующее шаблону даты в URL. Вот что у меня есть:
.*([0-9]{4}-[0-9]{2}-.*)
Используя пример URL, такой как:
www.mywebsite.com/2019-10-10-00-00-00/someString/
,
это регулярное выражение соответствует ожидаемому 2019-10-10-00-00-00/someString/
Тем не менее, я хочу улучшить его, чтобы он просто совпадал с 2019-10-10-00-00-00
Я пробовал это сделать до сих пор: .*([0-9]{4}-[0-9]{2}-[^\\\\/]*)
,
, избегая форварда-slash, как предложено в другом посте SO (я также пробовал один побег). Я не эксперт по Java, поэтому я протестировал его с помощью тестера регулярных выражений Java здесь , и он работает нормально, но в коде он совсем не совпадает.
Я также пытаюсьстарайтесь не использовать что-то вроде
.*([0-9]{4}-[0-9]{2}-[0-9]{2}-[0-9]{2}-[0-9]{2}-[0-9]{2})
главным образом потому, что дата может быть 2019-10-10-00-00-00
, 2019-10-10-00-00
, 2019-10-10-00
или чем-то еще, и потому что, безусловно, должен быть лучший способ.
Любые предложения будут хороши, или если это будет дубликат одного из множества вопросов по регулярным выражениям здесь, я с удовольствием закрою и ссылку.