Подсчитать количество точек в символьной строке с помощью str_count? - PullRequest
1 голос
/ 16 октября 2019

Я пытаюсь посчитать количество точек в символьной строке.

Я пытался использовать str_count, но вместо этого я получаю количество букв строки.

ex_str <- "This.is.a.string" 
str_count(ex_str, '.')
nchar(ex_str)

Ответы [ 3 ]

1 голос
/ 16 октября 2019

. является специальным regex символом, поэтому вам нужно его избежать:

str_count(ex_str, '\\.')
# [1] 3

Используя только базовую букву R, вы можете сделать:

nchar(gsub("[^.]", "", ex_str))

Использование stringi:

stri_count_fixed(ex_str, '.')
0 голосов
/ 16 октября 2019

Вы также можете использовать базовую функцию gregexpr:

sum(gregexpr(".", ex_str, fixed=TRUE)[[1]] > 0)
[1] 3
0 голосов
/ 16 октября 2019

Другое решение base R может быть:

length(grepRaw(".", ex_str, fixed = TRUE, all = TRUE))

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