[英]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.