Isso parece ser muito simples, mas as funções que tentei não parecem funcionar.
Quero encontrar todas as correspondências de um padrão dentro de uma string, por exemplo, match('killer', 'l')
deve retornar 3, 4
. Seria bom poder fazer isso com vários padrões de caracteres, mas não é essencial.
O que tentei até agora:
t = 'killer'
p = 'l'
grep(p, t) #returns 1
grep(p, strsplit(t,'')) #also 1 for some reason
stringr::str_match_all(t, p) #gives an array of "l"s.
Não quero criar uma função sozinho porque ela não será otimizada e precisarei executá-la milhares de vezes. Além disso, sinto que definitivamente existe uma função para isso.
Usando base
gregexpr
:Usando
str_locate_all
destringr
:Com
stri_locate_all_regex
destringi
: