JS、replace 利用正則表達(dá)式一次性替換SQL所有參數(shù)(帶冒號)轉(zhuǎn)為數(shù)據(jù),具體的實(shí)現(xiàn)思路及代碼如下,感興趣的朋友可以參考下哈,希望對你有所幫助
SQL參數(shù)格式 例如:select * from tb where nd=:nd and yd=:yd
想一次性把所有SQL語句中參數(shù)(帶冒號)全部換成數(shù)據(jù),
開始
選定用正則表達(dá)式。
原先寫這樣
復(fù)制代碼代碼如下:
strsql.replace(/(:/w+)/g,(“$1”).substring(1));
"$1" 總是本解析成字符串,而不是匹配的值
換成
復(fù)制代碼代碼如下:
strsql.replace(/(:/w+)/g,$1);
又不能給出匹配值,$1 要想得到匹配值必須要帶雙引號。
后突發(fā)奇想加了個(gè)方法
把$1 當(dāng)成參數(shù)傳遞,如下
復(fù)制代碼代碼如下:
var strsql = strsql.replace(/(:/w+)/g, function ($1) { var b = $1; return $("#" + b.substring(1)).val(); });
解決了