[英]R regex to find and replace code in rstudio
我想對代碼腳本進行一些更改。 我需要改變某些數據幀的子集化方式。 具體來說,我需要一種使用正則表達式來編輯R studio的代碼的方法。
我需要轉換幾個遵循這種格式的數據幀,
variablex_indicatory$n[i]
對此,
variablex_indicatory$n[variablex_indicatory$n==i]
由於我有許多變量和指標的組合(例如variable1_indicator2
, variable3_indicator1
等)。 我需要的是能夠替換$n[
從i]
到variablex_indicatory$n ==
所以我需要在正則表達式中指定,找到$n[
並替換為$n[whatever is before $n goes here ==
我會離開i
不變,因為它並不需要被改變。
如何做到這一點超過了我目前對正則表達式的了解(顯然)我希望有人可以提供幫助,再次提前感謝,如果我不夠清楚,請告訴我。
假設每一行看起來大致如下: variablex_indicatory$n[i]
,那么你可以將這個正則表達式放在查找框中: (^.+)(\\$n\\[)(i\\])
和替換框中的這個正則表達式: \\1\\2\\1==\\3
並單擊“全部替換”。
如果你有更復雜的代碼,那么你需要更好地定義第一組(我的例子從行的開頭選擇到美元符號( $
))。 這是第一組的一個變體:( (variab.+)
。 您實際使用的將取決於您的具體情況。
試試這個:
string<-"variablex_indicatory$n[i]"
first<-sub('\\[.*]','',string)
second<-sub('.*\\[(.*)\\]','\\1',string)
paste(first,'[',first,'==',second,']',sep='')
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.