Regex 从R中的字符串中精确匹配并计算单词的频率

Regex 从R中的字符串中精确匹配并计算单词的频率,regex,r,Regex,R,因此,我有一个文本块,如下所示: “最糟糕的是最不专业的……我不推荐……我赞扬她的努力……” 我怎样才能准确地匹配“推荐”这个词,计算它们的频率 问题: 我想数一数这个词出现了多少次 wrds <- gregexpr(pattern = "^commend$", string, fixed = TRUE)[[1]] length(wrds) 输出为2,包括推荐和推荐 gregexpr让我错过了什么 不要使用fixed=TRUE。我们要的是regexp,不是字符串 使用单词边界字符\b。要

因此,我有一个文本块,如下所示:

“最糟糕的是最不专业的……我不推荐……我赞扬她的努力……”

我怎样才能准确地匹配“推荐”这个词,计算它们的频率

问题:

我想数一数这个词出现了多少次

wrds <- gregexpr(pattern = "^commend$", string, fixed = TRUE)[[1]]
length(wrds)
输出为2,包括推荐和推荐

gregexpr让我错过了什么

  • 不要使用
    fixed=TRUE
    。我们要的是regexp,不是字符串
  • 使用单词边界字符
    \b
    。要在R中的字符串中使用此选项,需要转义反斜杠:
    “\\b”


    wrds它不会以这种方式返回任何内容如果你调用一个单词,那么
    \b
    就是一个单词边界<代码>\b命令\b
    基于@symbolx,要获得最终计数,请使用:
    长度(wrds[1])
    gregexpr(pattern = "commend", string, fixed = TRUE)[[1]]