Я пытаюсь удалить все поля, которые имеют специальные символы (@?.*
и т. Д.) В их тексте.Удалить поля со специальными символами
Я думаю, что я должен использовать
Filter(function(x) {grepl('|[^[:punct:]]).*?', x)} == FALSE, data$V1)
где data$V1
содержит мои данные. Однако, похоже,
grepl('|[^[:punct:]]).*?', x)
терпит неудачу с тривиальными примерами как
grepl('|[^[:punct:]]).*?', 'M')
, который выводит TRUE
даже если M
не имеет специальных символов. Как я должен использовать grepl
для удаления полей со специальными символами из столбца данных?
Удалить начальный '|'? –
'grepl ('[^ [: alnum:] _] +', c ('m', 'm @', 'M9 *'))' или 'grepl ('\\ W +', c ('m' , 'm @', 'M9 *')) ', как видно из справки регулярного выражения:« Символ '\ w' соответствует символу« word »(синоним« [[: alnum:] _] », расширение), а '\ W' - его отрицание' ([^ [: alnum:] _]) '." –