在R中提取左括号

时间:2017-10-31 11:24:52

标签: r

我试图在R中提取左括号但是得到以下错误。

text = "suppressWarnings( Gauge_Rule_Extraction( machine_id, gauge_output_calculation_df, host ) )"

gregexpr( "(", text )

Error in gregexpr("(", m) : 
  invalid regular expression '(', reason 'Missing ')''

但我能够提取右括号。

gregexpr(")", m)
[[1]]
[1] 123 125
attr(,"match.length")
[1] 1 1
attr(,"useBytes")
[1] TRUE

我做错了什么。

1 个答案:

答案 0 :(得分:2)

需要在正则表达式中转义括号。这是通过反斜杠完成的。此外,backslase将需要逃脱,因此加倍:

gregexpr( "\\(", text )

[[1]]
[1] 17 40
attr(,"match.length")
[1] 1 1
attr(,"useBytes")
[1] TRUE