R编程 - 在括号中替换第一个和第二个字符串

时间:2017-05-16 20:29:38

标签: r

E.g:

我有以下变量:

fileNamewithParams <- "myfunction(firstVariable,secondVariable)"

变量会改变,但模式保持不变。 这是一个包含两个参数的字符串。

firstVarToChange&lt; - 'newFirstVariable'

secondVarToChange&lt; - 'newSecondVariable'

我想用firstVarToChange和secondVarToChange替换firstVariablesecondVariable

括号中的值会发生变化,但是替换的值在这种情况下始终是常量firstVarToChange和secondVarToChange。

需要创建一个程序,以便正则表达式识别 分别在括号中的第一个值和第二个值 这样我得到了

fileNamewithParams <- "myfunction(newFirstVariable,newSecondVariable)"

非常感谢您的帮助。

2 个答案:

答案 0 :(得分:0)

第一场比赛&#39; myfunction&#39;并使用&#39;(&#39;和&#39;,&#39;和&#39;)&#39;作为分隔符。 类似的东西:

搜索:

myfunction\(.*,.*\)

替换

myfunction(newFirstVariable,newSecondVariable)

答案 1 :(得分:0)

我不知道R,但我对正则表达式非常满意。我会给你一些想法,也许会这样做。

myfunction\(([^,]+),([^)]+)

有两个捕获组,每个捕获组在parans内。这个正则表达式正在做的是使用一个字符类来匹配第一个paran的右边和至少1个非逗号,直到逗号,然后到下一个paran的左边。

所以要使用它,你的下一行将是2个捕获组。 $ 1和$ 2,或者其他什么,我不确定他们在R中是什么。希望这足以指出你正确的方向。 :)