Я хотел бы открыть диалоговое окно, чтобы выбрать файл и показать все файлы с определенным расширением, но исключить определенные имена файлов на основе соответствия шаблону (регулярное выражение или иначе).Исключить/отрицать слово в именах файлов, используя FilterSpec в uigetfile
Например, я хочу показать CSV-файлы, но не те, у которых есть «abc» в их имени файла.
, чтобы показать все .csv файлы я могу сделать (не то, что я хочу):
[filename, pathname] = uigetfile({'*.csv', 'CSV Files (*.csv)'});
с регулярными выражениями, я могу успешно исключить имена файлов с «ABC» следующим образом (благодаря How to negate specific word in regex?):
filenames = {'myfile.csv'; 'myfile-abc.csv'}
regexp(filenames, '^(?!.*abc).*.csv')
Однако, следующее не работает:
[filename, pathname] = uigetfile({'^(?!.*abc).*.csv', 'CSV Files (*.csv)'});
Как я могу нег съел слово из имени файла? Кажется, я могу делать только положительные подстановочные знаки (*), но не отрицание.