2013-10-12 4 views
-2

Я использую R, чтобы найти положение нескольких подстрок в большей строке. Это довольно прямая проблема, когда я ищу только одну подстроку, но мне нужно использовать функцию, которая находит ВСЕ требуемые подстроки.Найти положение нескольких подстрок R

Например, у меня мог бы быть такой вектор: «abcdefghijklmabcu». Я хотел бы найти положение первого вхождения ab и положение второго вхождения ab.

Буду признателен за любую помощь с этим или именем пакета, который сделает это довольно легко.

Спасибо!

+2

Добро пожаловать в SO. Пожалуйста, поделитесь кодом, который у вас есть, и почему он не работает. Поскольку этот вопрос стоит сейчас, мы догадываемся о том, как далеко вы уже пришли! – Justin

ответ

2

regexpr находит первый матч точно так же, как sub заменяет первое совпадение. добавив g в начало, вы обнаружите каждое совпадение.

x <- 'abcdefghijklmabcu' 
y <- gregexpr('ab', x) 

regmatches(x, y) 
Смежные вопросы