例如,我想使用Javascript / node:
检索字符串中的所有占位符SELECT * FROM myOrders WHERE order_id = {orderId} and order_date = {orderDate}
as array:[' orderId',' orderDate']。
我可以使用任何图书馆吗?
答案 0 :(得分:3)
您可以使用正则表达式:
var placeholders = sql.match(/\{\w+\}/g).map(s=>s.slice(1,-1));
演示:
var sql = "SELECT * FROM myOrders WHERE order_id = {orderId} and order_date = {orderDate}";
var placeholders = sql.match(/\{\w+\}/g).map(s=>s.slice(1,-1));
document.write(JSON.stringify(placeholders))

注意:如果您使用旧版本的Node(即没有arrow functions),请使用
var placeholders = sql.match(/\{\w+\}/g).map(function(s){ return s.slice(1,-1) });