gpt4 book ai didi

r - 使用 grepl 搜索文本中的多个子字符串之一

转载 作者:行者123 更新时间:2023-12-03 21:12:24 25 4
gpt4 key购买 nike

这个问题在这里已经有了答案:





Matching multiple patterns

(6 个回答)


3年前关闭。




我在 R 中使用 grepl() 来搜索我的文本中是否存在以下任何一种类型。我现在正在这样做:

grepl("Action", my_text) |
grepl("Adventure", my_text) |
grepl("Animation", my_text) |
grepl("Biography", my_text) |
grepl("Comedy", my_text) |
grepl("Crime", my_text) |
grepl("Documentary", my_text) |
grepl("Drama", my_text) |
grepl("Family", my_text) |
grepl("Fantasy", my_text) |
grepl("Film-Noir", my_text) |
grepl("History", my_text) |
grepl("Horror", my_text) |
grepl("Music", my_text) |
grepl("Musical", my_text) |
grepl("Mystery", my_text) |
grepl("Romance", my_text) |
grepl("Sci-Fi", my_text) |
grepl("Sport", my_text) |
grepl("Thriller", my_text) |
grepl("War", my_text) |
grepl("Western", my_text)
有没有更好的方法来编写这段代码?我可以将所有类型放在一个数组中,然后以某种方式使用 grepl()在那?

最佳答案

您可以使用“或”将流派粘贴在一起 |分隔符并运行它 grepl作为单个正则表达式。

x <- c("Action", "Adventure", "Animation", ...)
grepl(paste(x, collapse = "|"), my_text)

这是一个例子。
x <- c("Action", "Adventure", "Animation")
my_text <- c("This one has Animation.", "This has none.", "Here is Adventure.")
grepl(paste(x, collapse = "|"), my_text)
# [1] TRUE FALSE TRUE

关于r - 使用 grepl 搜索文本中的多个子字符串之一,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26319567/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com