Исключить подстроку с помощью IsMatchC#

Место общения программистов C#
Ответить
Anonymous
 Исключить подстроку с помощью IsMatch

Сообщение Anonymous »

Я хочу исключить пути к файлам, которые не соответствуют определенным условиям, например подстрокам или суффиксам в имени файла. В данном случае исключенный суффикс — «ZANG». Мой код С#:

Код: Выделить всё

string dirPath = "C:/path/to/file/";
string fileNamePre = "AnLe";
string regExSuf = @"[A-Z0-9_]*(?!ZANG)\.xml";
Regex rg = new Regex("^" + dirPath + fileNamePre + regExSuf + "$");
string[] fileNames = new[] {"AnLe.xml","AnLe_ZANG.xml","AnLe_TE.xml"};
IEnumerable resultFilePaths = fileNames.Select(element => dirPath + element).Where(element => {
return rg.IsMatch(element);
});
Если element = "C:/path/to/file/AnLe_ZANG.xml", то rg.IsMatch(element) должен возвращать false, иначе true.

Подробнее здесь: https://stackoverflow.com/questions/792 ... by-ismatch
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C#»