У меня есть куча файлов, которые нужно разобрать, и все они имеют один из двух шаблонов даты в имени файла (мы обновляем нашу систему, и нам нужно, чтобы файл-анализатор был способный распознавать как форматы даты, так и новые).C# Lazy Regular Expression Matching
Имена файлов выглядят либо <fileroot>_yyyyMMdd.log
или <fileroot>_MMddyy.log
, и мне нужно, чтобы быть в состоянии разобрать цифры, чтобы разобрать даты, однако, всякий раз, когда я пытаюсь использовать регулярное выражение как ^.*(\\d{6,8}).*$
или ^.*(\\d{6}|\\d{8}).*$
, чтобы разобрать число из date, группа захвата всегда имеет длину 6 символов, даже для имен файлов, которые составляют 8 цифр.
Есть ли способ заставить библиотеку регулярных выражений на C# быть настолько исчерпывающей, насколько это возможно при попытке сопоставить регулярное выражение? Я знаю, как это сделать на Java, просто не C#/.NET, я довольно новичок на этом языке.
# 1 сделал трюк, большое спасибо за вашу помощь. –