我试图从向量中找到任何不包含连续元音的单词,我将其定义为[aeiou]
。例如,我想要"阿拉斯加"或"密西西比",但不想要"乔治亚"或"夏威夷"。我知道{2,}
指定了两个或多个东西,而[^...]
不是什么东西。但我不知道如何在grep下组合它们。帮助
states <- c('Alaska','Georgia','Hawaii','Mississippi')
您几乎已经有了答案:
states[!grepl("[aeiou]{2}", states)]
[1] "Alaska" "Mississippi"
我只想在您从states
中提取的内容中使用逻辑否定(如上所述),而不是试图编写更复杂的正则表达式。
b(?![a-z]*[aeiou]{2})[a-z]+b
试试这个。请参阅演示。
https://regex101.com/r/sJ9gM7/45
对于r
,它将是\b(?![a-z]*[aeiou]{2})[a-z]+\b
使用perl=True
运行此操作