【发布时间】:2022-01-02 19:52:36
【问题描述】:
我想识别具有两个关键字的字符串,它们之间有 0 到 3 个单词。在大多数情况下我的工作:
strings <- c(
"Today is my birthday",
"Today is not yet my birthday",
"Today birthday",
"Today maybe?",
"Today: birthday"
)
grepl("Today(\\s\\w+){0,3}\\sbirthday", strings, ignore.case = TRUE)
#> [1] TRUE FALSE TRUE FALSE FALSE
由reprex package (v2.0.1) 于 2021 年 11 月 24 日创建
我的问题是字符串"Today: birthday"。问题是一个词被定义为(\\s\\w+),没有让句子包含任何标点符号的选项。如何更好地为 word 定义正则表达式,以便不排除标点符号(最好忽略它)。
【问题讨论】: