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(); });
解决了
您可能感兴趣的文章:JS基于正则表达式的替换操作(replace)用法示例js replace(a,b)之替换字符串中所有指定字符的方法js正则表达式replace替换变量方法js使用正则实现ReplaceAll全部替换的方法JS使用replace()方法和正则表达式进行字符串的搜索与替换实例JS Replace 全部替换字符的用法小结JS利用正则配合replace替换指定字符js replace替换字符串同时替换多个方法
参数
正则
正则表达式
js
replace