Unix Case RegEx

Запустите sudo apt-get install linux-headers-generic

4
18.09.2016, 17:02
1 ответ

Мне нравится ответ Тердона.

Что касается части этого вопроса Regex , ваш шаблон недействителен. вы должны выйти с \ все специальные символы , например:

([0-9] | [0-9] [0-9]) \ / ([0-9] | [0-9] [0-9]) \ / ([0 -9] [0-9] | [0-9] [0-9] [0-9] [0-9])

Для известных наборов данных, таких как даты, не пытайтесь изобретать велосипед, так как там буквально тысячи ответов в Интернете для сопоставления дат. Если вы хотите создать что-то более личное, используйте помощники регулярных выражений, такие как мой личный любимый regex.com , чтобы тестировать и улучшать свой шаблон по мере того, как выжелание.

Отредактировано: С экранированными символами ваш код поймает некоторые даты, но все же он не идеален, потому что он никогда не поймает 01.01.2016 , вместо этого он поймает только 01.01.20 . «Приоритет» - 2 числа за год вместо 4. Вам нужно переключить их, чтобы найти первое совпадение с наибольшим совпадением, и если это не удастся, оно перехватит самое маленькое:

([0-9] | [0-9] [0-9]) \ / ([0-9] | [0-9] [0-9]) \ / ([0-9] [0-9] [0-9] [0-9] | [0-9] [0 -9])

0
27.01.2020, 20:47

Теги

Похожие вопросы