You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

R语言通配符模式匹配实现字符串关键词出现次数统计

R语言统计字符串中指定关键词总出现次数的实现方案

已知定义的变量如下:

text <- "AWAYTEAM IS XXX. I THINK THEAWAYTEAM WILL WIN"
keyword <- c("AWAY","WIN")

我们需要统计所有关键词在text中的总出现次数,示例预期输出为3,以下是两种可行方案:

方案1:使用stringr包实现(推荐,代码简洁易读)

  • 步骤1:安装并加载stringr包(已安装可跳过安装步骤)
# 安装包(仅首次使用需要运行)
install.packages("stringr")
# 加载包
library(stringr)
  • 步骤2:统计总次数
total_count <- sum(str_count(text, keyword))

运行后total_count的值就是3,符合预期。str_count会向量化统计每个关键词的出现次数,通过sum直接求和即可得到总次数。

方案2:Base R 实现(无需额外安装依赖)

使用R内置的gregexpr函数实现,不需要安装第三方包:

total_count <- sum(sapply(keyword, function(k) {
  match_res <- gregexpr(k, text)[[1]]
  # 处理关键词未匹配到的情况
  ifelse(match_res[1] == -1, 0, length(match_res))
}))

运行后同样可以得到总次数3。

注意事项

  • 上述方案默认是子串匹配,即只要关键词出现在文本的任意位置就算一次匹配,和示例的匹配逻辑一致。
  • 如果需要匹配独立完整单词,可对关键词添加单词边界修饰:
# 匹配完整单词的版本
keyword_whole <- paste0("\\b", keyword, "\\b")
# 替换到上述统计逻辑中即可只匹配独立的关键词单词

内容的提问来源于stack exchange,提问作者user9532692

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.06 20:06:02