Обратите внимание, что gsub
удаляет только текст внутри символьных векторных элементов, но не удаляет сами элементы.В этом случае вам понадобится решение, подобное grep
.
Вы можете использовать простой шаблон для идентификации этих элементов:
^\[\d+]$
См. Демонстрационную версию regex .
Подробности
^
- начало строки \[
- [
char \d+
- 1+ цифр ]
- литерал ]
$
- конец строки.
Тогда используйте его с grep
командой с опцией invert=TRUE
, чтобы сохранить только элементы, не соответствующие этому регулярному выражению, и value=TRUE
, чтобы получить значения, а не индексы.
См. R демо :
> a <- c("[1]", "\"0\"")
> grep("^\\[\\d+]$", a, invert=TRUE, value=TRUE)
[1] "\"0\""