2013-11-07 2 views
2

Я пытаюсь найти способ, чтобы перечислить все имена файлов в папке, которая соответствует схеме:Найти все имена файлов, которые соответствуют шаблону

20131106XXXXX.pdf 

Приставка является датой, и содержание и продолжительность XXXX различаются в разных файлах, и я только забочусь о файлах PDF.

Любой может посоветовать способ сделать это?

+1

Действительно ли это 'X', или это может быть любой альфа-символ? –

+1

Извините, я должен быть более конкретным. XXXX здесь означает символы, которые могут быть на другом языке (упрощенный китайский). – user2854008

ответ

10

Попробуйте

list.files(path="./yourdir",pattern="[[:digit:]]{8}.*\\.pdf") 
+0

спасибо, могу ли я указать здесь 8-значный номер? Скажем, я хочу, чтобы префикс был точным «20131106» – user2854008

+0

да, шаблон будет соответствовать любому 8-значному номеру, за которым следует 0 или более произвольных символов, а также расширение .pdf. Замените его «20131106. * \\. Pdf», чтобы соответствовать только файлам, начиная с 20131106. Проверьте? Regex для получения дополнительной информации о регулярных выражениях. – ndr

3

Вы можете использовать регулярное выражение.

files <- dir(pattern="^[0-9]{8}.*\\.pdf") 
Смежные вопросы