我有一个棘手的问题。
我的代码中有一堆函数调用,即getproperty(mytype)
。
我想用以下代码替换所有这些mytype.property
精心制作%s
会让生活更加轻松。
非常感谢。
编辑:
针对要求提供更多信息的评论做出回应:
我有一个文本文件
type Foo
property
end
func getproperty(Foo)
return Foo.property
end
mytype = Foo(1.2)
a = bar.baz * getproperty(mytype)
b = a * exp(getproperty(mytype)) * sqrt(getproperty(mytype))
等等等等
我想通过摆脱getproperty
函数调用并mytype.property
直接访问来清理这个问题
答案1
我假设你的“ property
”和“ mytype
”是占位符;也就是说,你想转换
得到财产(我的风格)进入
我的风格。财产一般来说。
如果你的属性和类型全部由小写字母组成,
%s/get\([a-z]*\)(\([a-z]*\))/\2.\1/g
应该这样做。例如,它改变了
getheight(barney) + getweight(fred)
进入
barney.height + fred.weight
如果它们可以包含大写字母和/或数字,请对正则表达式进行显而易见的更改。如果它们可以是更复杂的表达式,如flintstone[1]
或wilma.husband
,请尝试准确定义它们可以是什么和不可以是什么。