我有一个看起来像这样的文件:
<QUERY name="Secondary">
<SQLStmt>select * from my_tb;
</SQLStmt>
<QUERY name="primary">
<SQLStmt>select * from my_tb;
</SQLStmt>
<QUERY name="last">
<SQLStmt>select * from my_tb;
</SQLStmt>
我需要用我从命令行收到的其他一些 SQLStmnts 和查询名称替换 SQLStmnts。
如何使用条件进行匹配和替换?
$qury_nm=shift;
$sqlstmt=shift;
undef $/;
if(/<QUERY name="$qury_nm">(.*)<SQLStmt>(.*)<\SQLStmt>/)
{
#need help here!!
substitute the matched qury_nms SQLStmt wth the $sqlstmt and write it into the same file...
}