root@localhost:~$ echo "bool funname::controllerFun(UNSIGNED32 id)" |sed 's/\(.*\) \(.*\)::\(.*\)\((.*)\)/1 is \1 2 is \2 3 is \3 4 is \4/g'
1 is bool 2 is funname 3 is controllerFun 4 is (UNSIGNED32 id)
root@localhost:~$ echo "bool funname::controllerFun(UNSIGNED32 id)" |sed 's/\(.*\) \(.*\)::\(.*\)(\(.*\) \(.*\))/\1 mns_\2 \3(\4 \5)\n{\n\t PONSA->\3(\5);\n}/g'
bool mns_funname controllerFun(UNSIGNED32 id)
{
PONSA->controllerFun(id);
}
root@localhost:~$

本文介绍如何使用SED命令解析C++风格的函数调用字符串,通过正则表达式提取函数名称、参数类型及参数名,实现自动化代码转换。示例展示了将特定格式的函数调用转换为另一种格式的过程。
1万+

被折叠的 条评论
为什么被折叠?



