使用Node / Javascript提取字符串中的所有placeHolders

时间:2016-04-28 11:11:48

标签: javascript node.js

例如,我想使用Javascript / node:

检索字符串中的所有占位符
SELECT * FROM myOrders WHERE order_id = {orderId} and order_date = {orderDate}

as array:[' orderId',' orderDate']。

我可以使用任何图书馆吗?

1 个答案:

答案 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) });