我在Lua(一种脚本语言)中有许多类似于
的源代码行对象:方法(...)
后来我决定让方法成为一般函数,然后我需要将上面的行改为
方法(对象...)
我认为正则表达式替换可以解决我的问题,但我只是在努力。
BTW,对象和方法的名称遵循共同的身份约定,例如由字符,数字和" _"组成。仅请帮忙。最好使用文本编辑器(如Visual Studio)来执行此操作。
提前谢谢你,
应
答案 0 :(得分:0)
这是一个Lua解决方案:
S=[[
object1:method1()
object2:method2(a)
object3:method3(a,b)
]]
S=S:gsub("(%w+):(%w+)%(%)","%2:(%1)")
S=S:gsub("(%w+):(%w+)%((.-)%)","%2:(%1,%3)")
print(S)
答案 1 :(得分:0)
您可以使用简单的搜索并替换:
\b(\w+):(\w+\s*)\(
并替换为$2($1,
。
解释:
\b
- 字边界(\w+)
- 第1组:一个或多个单词字符(在替换中,此文本以$1
反向引用):
- 文字:
(\w+\s*)
- 第2组:一个或多个单词字符后跟零个或多个空格(在替换中,此文本以$2
反向引用)\(
- 文字(
字符请参阅regex demo
此表达式适用于Notepad ++或Visual Studio。