括号中的正则表达式以及中间的任何内容

时间:2018-02-27 21:48:20

标签: r regex

我尝试了(?<=\().*(?=\)),但我不知道如何包含括号。我不认为它接受/作为转义字符。

我正试图在data.frame列中删除这些字符串:

" (50%)"

不包括引号 - 它们只是为了表明在第一个(之前有一个空格。

期望的输出:

(50%)

我打算本周末做一些重型正则表达式工作,我一直坚持下去。

1 个答案:

答案 0 :(得分:0)

转义字符为\,而不是/。所以\(.*\)应该匹配。如果您正在使用R,那么您还需要编写" \\(.*\\)",因为您还必须转义\。这样,您就可以匹配空格,括号(),以及它们之间的任何字符。

library(stringr)
str_detect(" (50%)", " \\(.*\\)")
#> [1] TRUE

reprex package(v0.2.0)创建于2018-02-27。