我是一名C++用户,并获得了一些.at()用于对STL向量进行绑定检查的代码.现在我想将它们改为标准[].有谁知道可以做到这一点的脚本?它不一定是一个超级通用的脚本 - 大部分情况都是.at(i)或者可能.at(a*i+j)- 但它们有太多可以手工完成.
使用此Perl运算符:
s/\.at\(([^)]+)\)/[$1]/g
Run Code Online (Sandbox Code Playgroud)
s///Perl中的运算符是"替代"(查找/替换).在第一组//中,指定要匹配的正则表达式.第二个//是替换或替换匹配的文本.
在这种情况下,我发现任何".at(任何东西,而不是近距离)"的实例,并将其替换为"[那些在那些 - parens]中".
作为单线,
perl -pe's/\.at\(([^)]+)\)/[$1]/g' in.cpp > out.cpp
Run Code Online (Sandbox Code Playgroud)
如果使用Visual Studio,请在"查找/替换"提示中执行此操作:
找到什么:\.at\({[^)]+}\)
替换为:\[\1\]
启用正则表达式,你很高兴.