我需要一些正則表達式的幫助我正在做一個程序與節點js加載sql與表結構並執行它們,我存儲在數組中的所有表名應該是創建。 我有下面的代碼,它的工作原理,但我想知道是否有更好的方法來做到這一點。在此先感謝..正則表達式來匹配表中的表名稱創建表語句
for (var i = 0, max = list.length; i < max; i++) {
(function (j) {
var sql = fs.readFileSync(path.join(__dirname, 'sql', list[j]), "utf8").toString();
// var stmts = sql.match(/[_\"a-zA-Z0-9\s\,\(\)\*-]+;/gi);
var tables = sql.match(/CREATE\sTABLE\s\"?[A-Z0a-z0-9_]+\"?/gi);
if (tables) {
for (var k = 0, max = tables.length; k < max; k++) {
tables[k] = tables[k].replace(/create\stable\s+?/gi, '');
tables[k] = tables[k].replace(/\"/, '');
console.log("========= table name ==========");
console.log(tables[k]);
}
}
})(i);
}
更好地以什麼方式?更快?更高的內存效率?更可讀?更少的錯誤傾向?更靈活?所有這些,甚至更多,都可以用「更好」這個術語來表示,但它們往往是相互衝突的目標。 –