我在R中有一个数据框,其中一列(称为“城市”)包含一个文本字符串。我的目标是从文本字符串中仅提取一个词,即城市文本。城市文本始终跟随“in”一词,例如,文本可能是:

'in London'
'in Manchester'

我试图创建一个新列(“市政性”):
df$municipality <- gsub(".*in ?([A-Z+).*$","\\1",df$city)

这给了我“in”之后的第一个字母,但我需要下一个单词(仅下一个单词)

然后,我尝试了:
gsub(".*in ?([A-Z]\w+))")

在正则表达式检查器上工作,但在R中不起作用。有人可以帮我吗。我知道这可能很简单,但我无法破解。提前致谢。

最佳答案

我们可以使用str_extract

library(stringr)
str_extract(df$city, '(?<=in\\s)\\w+')
#[1] "London"     "Manchester"

关于regex - 在R regex中将一个单词匹配另一个单词,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/34804708/

10-11 22:41
查看更多