当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


R stringr str_detect 检测是否存在匹配


对于 string 中与 patternFALSE 匹配的每个元素,str_detect() 返回一个带有 TRUE 的逻辑向量。它相当于grepl(pattern, string)

用法

str_detect(string, pattern, negate = FALSE)

参数

string

输入向量。或者是一个字符向量,或者是可强制转换为一个的东西。

pattern

要寻找的模式。

默认解释是正则表达式,如 vignette("regular-expressions") 中所述。使用regex() 可以更好地控制匹配行为。

使用 fixed() 匹配固定字符串(即仅比较字节)。这很快,但是是近似值。一般来说,为了匹配人类文本,您需要coll(),它尊重指定区域设置的字符匹配规则。

将字符、单词、行和句子边界与 boundary() 匹配。空模式“”相当于 boundary("character")

negate

如果 TRUE ,则返回不匹配的元素。

string /pattern 长度相同的逻辑向量。

也可以看看

该函数包装的 stringi::stri_detect()str_subset() 用于 x[str_detect(x, pattern)] 的方便包装

例子

fruit <- c("apple", "banana", "pear", "pineapple")
str_detect(fruit, "a")
#> [1] TRUE TRUE TRUE TRUE
str_detect(fruit, "^a")
#> [1]  TRUE FALSE FALSE FALSE
str_detect(fruit, "a$")
#> [1] FALSE  TRUE FALSE FALSE
str_detect(fruit, "b")
#> [1] FALSE  TRUE FALSE FALSE
str_detect(fruit, "[aeiou]")
#> [1] TRUE TRUE TRUE TRUE

# Also vectorised over pattern
str_detect("aecfg", letters)
#>  [1]  TRUE FALSE  TRUE FALSE  TRUE  TRUE  TRUE FALSE FALSE FALSE FALSE
#> [12] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
#> [23] FALSE FALSE FALSE FALSE

# Returns TRUE if the pattern do NOT match
str_detect(fruit, "^p", negate = TRUE)
#> [1]  TRUE  TRUE FALSE FALSE
源代码:R/detect.R

相关用法


注:本文由纯净天空筛选整理自Hadley Wickham等大神的英文原创作品 Detect the presence/absence of a match。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。