Ответ 1
Мой R-Fu слаб, чтобы быть несуществующим, но я думаю, что знаю, что случилось.
Часть обработки строк R-процессора должна заглянуть внутрь строк, чтобы преобразовать \n
и связанные с ними escape-последовательности в их эквиваленты символов. R не знает, что означает \.
, поэтому он жалуется. Вы хотите, чтобы сбежавшая точка попала в двигатель регулярных выражений, поэтому вам нужно получить один \
за строковым манджлером. Обычный способ сделать это - избежать побега:
grepl("Processor\\.[0-9]+\\..*Processor\\.Time", names(web02))
Встраивание одного языка (регулярных выражений) внутри другого языка (R) обычно немного беспорядочно, и тем более, когда оба языка используют один и тот же синтаксис экранирования.