R语言中如何删除指定单词及其前一个单词(正则实现)
在R语言中移除指定单词及其前置单个单词的正则实现
要实现移除指定单词(如示例中的hospital)及其前面恰好一个单词,无需枚举前置单词列表,可以借助stringr包的str_replace_all函数配合精准的正则表达式完成。
解决方案代码
# 加载stringr包 library(stringr) # 原始字符串向量 string <- c('first local hospital orlando', 'state hospital claifornia', 'state hospital orlando') # 执行替换:移除"hospital"及其前面的一个单词 string_new <- str_replace_all(string, "\\S+\\s+hospital\\s+", "") # 查看结果 string_new
正则表达式解释
\\S+:匹配任意非空白字符序列,即一个完整的前置单词\\s+:匹配一个或多个空格,用于分隔前置单词和目标单词hospitalhospital:指定需要移除的目标单词\\s+:匹配目标单词后的空格,避免替换后出现多余空格
运行结果
执行上述代码后,将得到预期的结果:
[1] "first orlando" "claifornia" "orlando"
内容的提问来源于stack exchange,提问作者Polina Ermolaeva
相关产品推荐
相关产品推荐

