Почему мой действительный шаблон регулярных выражений не работает в R - PullRequest
1 голос
/ 26 октября 2019

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

  1. Он должен содержать «AllRecipients» и
  2. Это должен быть файл «.csv».

Например, файл: "AllRecipients_XYZ324_S_test.csv"

При использовании онлайн-тестировщиков регулярных выражений следующий шаблон работает очень хорошо:

^(?=.*AllRecipients)(?=.*csv).*$

Однако в R, Я получаю эту ошибку:

invalid 'pattern' regular expression

Это полная строка в скрипте:

temp = list.files(path="..", pattern="^(?=.*AllRecipients)(?=.*csv).*$", full.names = TRUE)

Есть идеи, почему это не работает в R?

1 Ответ

2 голосов
/ 26 октября 2019

list.files Параметр шаблона использует синтаксис регулярного выражения TRE , поэтому просмотр недоступен.

Но на самом деле это не проблема, так как просмотр вообще не нужен:

list.files(path="..", pattern="AllRecipients.*\\.csv$", full.names = TRUE)

Обратите внимание, что ваш исходный шаблон был неверным, поскольку он совпадает, даже если csv не находится в конце имени файла.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...