2017-05-16 3 views
1

を置き換える:Rプログラミング - 例えば第一及び括弧内の2番目の文字列

を私は次の変数があります。

fileNamewithParams <- "myfunction(firstVariable,secondVariable)" 

変数は、しかし、パターンは同じまま変更されます。 これは2つのパラメータを持つ文字列です。

firstVarToChange < - 'newFirstVariable'

secondVarToChange < - 'newSecondVariable'

私はfirstVarToChangeとsecondVarToChangeでfirstVariablesecondVariableを交換したいです。

括弧内の値は変更されますが、この場合はfirstVarToChangeとsecondVarToChangeの値が常に一定です。

iは

fileNamewithParams <- "myfunction(newFirstVariable,newSecondVariable)" 

を得るよう それぞれ正規表現は 最初の値と括弧内の第2の値を認識するようなプログラムを作成する必要があなたのヘルプは非常に理解されるであろう。

+0

実際に文字列にRコードが格納されていますか?それは非常に奇妙なようです。本当に**あなたは何をしようとしていますか?あなたが悪い道を始めるかもしれないようです。 – MrFlick

答えて

0

を交換してください。私はあなたにいくつかのアイデアを与え、多分それはそれを行うでしょう。

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

2つのキャプチャグループがあり、それぞれがパランス内に1つずつあります。この正規表現がやっていることは、最初のparanの右から、少なくとも1つはカンマではなく、次にカンマに、次に、次のparanの左にマッチする文字クラスを使用することです。

これを使用するには、次の行が2つのキャプチャグループになります。 $ 1と$ 2、または何か、私は彼らがRにいるかどうかはわかりません。うまくいけば、それは正しい方向にあなたを指すのに十分です。 :)

0

最初に一致する「myfunction」を使用し、区切り文字として '('と '、'と ')を使用します。 何かのように:

検索:

myfunction\(.*,.*\) 

私はRを知らないが、私は正規表現でかなり良いよ

myfunction(newFirstVariable,newSecondVariable) 
関連する問題