相关疑难解决方法(0)

我如何处理特殊字符,如\ ^ $.?*| +()[{在我的正则表达式?

我想匹配一个正则表达式特殊字符,\^$.?*|+()[{.我试过了:

x <- "a[b"
grepl("[", x)
## Error: invalid regular expression '[', reason 'Missing ']''
Run Code Online (Sandbox Code Playgroud)

(等价stringr::str_detect(x, "[")stringi::stri_detect_regex(x, "[").)

将值加倍以逃避它不起作用:

grepl("[[", x)
## Error: invalid regular expression '[[', reason 'Missing ']''
Run Code Online (Sandbox Code Playgroud)

也没有使用反斜杠:

grepl("\[", x)
## Error: '\[' is an unrecognized escape in character string starting ""\["
Run Code Online (Sandbox Code Playgroud)

我如何匹配特殊字符?


这个问题的一些特殊情况是陈旧的,写得足够好,因为它可以像这样重复关闭:
在R正则表达式中逃脱的时期
如何逃避R中的问号?
在正则表达式中转义管道("|")

regex r r-faq

64
推荐指数
1
解决办法
10万
查看次数

标签 统计

r ×1

r-faq ×1

regex ×1