У меня есть шаблон для list.files, который находит некоторые из них, но когда я пытаюсь указать немного больше, я ничего не получаю.Соответствующие файлы с регулярными выражениями с list.files
Здесь вы можете увидеть, что только добавление [: Alpha:], который все файлы, перечисленные, прежде чем я получил одно значение меньше, которое должно появиться (если я хорошо понимал, регулярных выражений):
> list.files(pattern = paste("UP.csv", sep=""), ignore.case=FALSE)
[1] "TvsPTglult-PglultUP.csv" "TvsPTglusp-PgluspUP.csv"
[3] "TvsPTglysp-PglyspUP.csv" "TvsPTmeth-PmethUP.csv"
> list.files(pattern = paste("[:alpha:]UP.csv", sep=""), ignore.case=FALSE)
[1] "TvsPTglusp-PgluspUP.csv" "TvsPTglysp-PglyspUP.csv"
[3] "TvsPTmeth-PmethUP.csv"
#Or just without paste and just '
> list.files(pattern = '[:alpha:]UP.csv', ignore.case=FALSE)
[1] "TvsPTglusp-PgluspUP.csv" "TvsPTglysp-PglyspUP.csv"
[3] "TvsPTmeth-PmethUP.csv"
#And trying to specify with how many times it appears:
> list.files(pattern = '[:alpha:]{6,10}UP.csv', ignore.case=FALSE)
character(0)
#Adding a point to match any single character and I get just one
> list.files(pattern = '[:alpha:].UP.csv', ignore.case=FALSE, full.names=FALSE)
[1] "TvsPTglult-PglultUP.csv"
Может кто-то пожалуйста, объясните, как я должен сделать, чтобы получить только все в первой команде, кроме Пмет?
Но, пожалуйста, объясните, я хотел бы чаще использовать регулярные выражения.
Edit: Info Session
sessionInfo()
R version 3.0.1 (2013-05-16)
Platform: x86_64-unknown-linux-gnu (64-bit)
locale:
[1] LC_CTYPE=en_GB.UTF-8 LC_NUMERIC=C
[3] LC_TIME=en_GB.UTF-8 LC_COLLATE=en_GB.UTF-8
[5] LC_MONETARY=en_GB.UTF-8 LC_MESSAGES=en_GB.UTF-8
[7] LC_PAPER=C LC_NAME=C
[9] LC_ADDRESS=C LC_TELEPHONE=C
[11] LC_MEASUREMENT=en_GB.UTF-8 LC_IDENTIFICATION=C
К сожалению, он не работает с 'list.files (pattern =" [[: alpha:]] {6,10} UP.csv ")' Я получаю то же самое '[1]" TvsPTglult-PglultUP. csv "" TvsPTglusp-PgluspUP.csv " [3]" TvsPTglysp-PglyspUP.csv "" TvsPTmeth-PmethUP.csv "' – Llopis
Хмм. 'list.files (pattern =" - [[: alpha:]] {6} UP.csv ")' работает (помещает дефис в явном виде). Не знаю, почему. –
На первый взгляд это похоже на ошибку - тот же шаблон работает по-разному в 'grep' и' list.files', но мне нужно будет поиграть с ним еще немного, чтобы убедиться. –