JS、replace利用正则表达式替换SQL所有参数为指定

网络编程 2021-07-05 10:07www.168986.cn编程入门
JS、replace 利用正则表达式一次性替换SQL所有参数(带冒号)转为数据,具体的实现思路及代码如下,感兴趣的朋友可以参考下哈,希望对你有所帮助
SQL参数格式 例如select from tb where nd=:nd and yd=:yd
想一次性把所有SQL语句中参数(带冒号)全部换成数据,

开始
选定用正则表达式。

原先写这样
代码如下:

strsql.replace(/(:\w+)/g,(“$1”).substring(1));

"$1" 总是本解析成字符串,而不是匹配的值
换成
代码如下:

strsql.replace(/(:\w+)/g,$1);

又不能给出匹配值,$1 要想得到匹配值必须要带双引号。

后突发奇想加了个方法
把$1 当成参数传递,如下
代码如下:

var strsql = strsql.replace(/(:\w+)/g, function ($1) { var b = $1; return $("#" + b.substring(1)).val(); });


解决了

Copyright © 2016-2025 www.168986.cn 狼蚁网络 版权所有 Power by