Как сделать просмотр вперед нежадным? Я бы хотел, чтобы первый случай ничему не соответствовал (как второй случай), но он возвращает «винни». Я думаю, потому что это жадно соответствует после "the"?
str <- "winnie the pooh bear"
## Unexpected
regmatches(str, gregexpr("winnie|bear(?= bear|pooh)", str, perl=T))
# [1] "winnie"
## Expected
regmatches(str, gregexpr("winnie(?= bear|pooh)", str, perl=T))
# character(0)