R中正则表达式删除

时间:2018-06-09 16:58:45

标签: r regex

我有一个载体,其中列出了每个观察的列表:

"Alcohol Dependence (F10.20),Hep B (Z22.51),Hep C (Z22.52),Opioid Abuse (F11.19),Pain- Back, low (M54.5),Pain- Back, upper (M54.9),Respiratory- Tuberculosis (TB) (A15.9)"

我正在尝试删除括号及其间的所有内容,但我无法弄清楚要在此处使用的正则表达式。我正在使用stringr包和str_replace_all函数。任何帮助将不胜感激!

2 个答案:

答案 0 :(得分:1)

完全请求的内容 - 它删除括号及其间的所有内容

('DB_HOST', "localhost");
('DB_USER', "root");
('DB_PASSWORD', "");
('DB_NAME', "test");

您可能还希望在包裹开始前删除空格:

str_replace_all(text_line, "\\([^\\)]*\\)", "")

答案 1 :(得分:0)

您可以使用此正则表达式:

pkill -f fileA.py;python3 -u fileA.py >> fileA.log &
 pkill: invalid user name: fileA.py

并替换为空字符串\s*\(.*?\)\s*

""

Demo

说明:

  • 中间部分str_replace_all(your_string, "\\s*\\(.*?\\)\\s*", "") 使用延迟量词(\(.*?\)),因此只要*?匹配就会停止。开头和结尾的)与空格匹配,因此您不会在结果中获得额外的空格。