正则表达式在str_replace_all函数中失败?

时间:2019-02-27 12:37:26

标签: r regex string stringr

我正在尝试生成一个将找到的正则表达式:

\"}}{\"risk_level字符串并替换为 \"}},{\"risk_level

我尝试用以下方法做到这一点:

pattern = "\\\"\}\}\{\\\"risk_level"
replacement = "\\\"\}\}\,\{\\\"risk_level"

我正试图在R str_replace_all()函数中做到这一点。

它失败并显示以下错误:

  

stri_replace_all_regex中的错误(字符串,模式,   fix_replacement(replacement),:regexp模式中的语法错误。   (U_REGEX_RULE_SYNTAX)

请告知。

这是一个带有示例字符串的玩具示例:

x <- "\"simOperator\":\"42507\",\"simOperatorName\":\"333333333fdvdv\",\"groupIdentifierLevel1\":\"39ffffff\",\"networkType\":\"e43\",\"phoneCount\":\"1\",\"networkOperatorName\":\"Hfffff\"}}{\"risk_level\":\"HIGH\",\"average\":0.625,\"keys\":{\"checkpoint\":\"TRANSACTION\",\"requestId\":\"wfwfwfwfwf8eb-wfewefwewe91-abdd83164a99\"

str_replace_all(x, pattern = pattern, replacement = replacement)

1 个答案:

答案 0 :(得分:0)

尝试:

gsub("([}])([{])","\\1,\\2",string,perl=TRUE)
[1] "\"}},{\"risk_level"