使用R从以表达式结尾的句子中提取所有单词
假设我有下一个字符串: “帕拉弗拉斯宫位于法泽东南部,英格兰东南部” 如何提取单词“fazer se”“Encentral se”“enganar se” 我正试着像这样使用stringr使用R从以表达式结尾的句子中提取所有单词,r,regex,R,Regex,假设我有下一个字符串: “帕拉弗拉斯宫位于法泽东南部,英格兰东南部” 如何提取单词“fazer se”“Encentral se”“enganar se” 我正试着像这样使用stringr library(stringr) sentence <- "palavras a serem encontradas fazer-se encontrar-se, enganar-se" str_extract_all(sentence, "se$")
library(stringr)
sentence <- "palavras a serem encontradas fazer-se encontrar-se, enganar-se"
str_extract_all(sentence, "se$")
我们可以指定单词边界(
\\b
)而不是字符串的结尾($
)(只有一个匹配项,即在字符串的结尾),我们需要在se
子字符串之前获得非空白字符,因此使用\\S+
,即一个或多个非空白字符
library(stringr)
str_extract_all(sentence, "\\S+se\\b")[[1]]
#[1] "fazer-se" "encontrar-se" "enganar-se"
在base R中,我们可以使用
gregexpr
和regmatches
:
regmatches(sentence, gregexpr('\\w+-se', sentence))[[1]]
#[1] "fazer-se" "encontrar-se" "enganar-se"
使用str\u extract\u all(句子“\\w+-se\\b”)
regmatches(sentence, gregexpr('\\w+-se', sentence))[[1]]
#[1] "fazer-se" "encontrar-se" "enganar-se"