A:如何检查字符是否在字符串中
您可以使用以下方法来检查某个字符是否在 R 中的字符串中:
方法1:使用Base R检查字符是否在字符串中
grepl(my_character, my_string, fixed= TRUE )
方法2:使用stringr包检查字符是否在字符串中
library (stringr)
str_detect(my_string, my_character)
以下示例展示了如何在实践中使用每种方法。
示例 1:使用 Base R 检查字符是否在字符串中
以下代码显示如何检查 R 中的特定字符串中是否存在“Doug”:
#define character to look for
my_character <- "Doug"
#define string
my_string <- "Hey my name is Douglas"
#check if "Doug" is in string
grepl(my_character, my_string, fixed= TRUE )
[1] TRUE
由于字符串中存在“Doug”,因此grepl()函数返回TR E 。
假设我们检查字符串中是否存在“Steve”:
#define character to look for
my_character <- "Steve"
#define string
my_string <- "Hey my name is Douglas"
#check if "Steve" is in string
grepl(my_character, my_string, fixed= TRUE )
[1] FALSE
由于字符串中不存在“Steve”,因此grepl()函数返回FALSE 。
示例 2:使用 stringr 包检查字符是否在字符串中
下面的代码展示了如何使用stringr包的str_detect()函数来检查特定字符串中是否存在字符串“Doug”:
library (stringr)
#define character to look for
my_character <- "Doug"
#define string
my_string <- "Hey my name is Douglas"
#check if "Doug" is in string
str_detect(my_string, my_character)
[1] TRUE
str_detect()函数返回TRUE ,因为“Doug”在字符串中。
请注意,我们还可以使用以下语法来检查字符串中是否存在多个字符:
library (stringr)
#define vector of characters to look for
my_characters <- c("Doug", "Steve", "name", "He")
#define string
my_string <- "Hey my name is Douglas"
#check if each character is in string
str_detect(my_string, my_characters)
[1] TRUE FALSE TRUE TRUE
从结果我们可以看出:
- “Doug”存在于链条中。
- 频道中不存在“Steve”。
- 字符串中存在“name”。
- “It”存在于字符串中。
相关:如何在 R 中使用 str_detect() 函数(3 个示例)
其他资源
以下教程解释了如何在 R 中执行其他常见任务: