0
我想構建一個正則表達式來過濾掉SQL語句的某些部分。我目前正在與合作聲明:需要幫助建立正則表達式
CREATE TABLE tblname (
column Nr PRIMARY KEY,
column2 TEXT DEFAULT 'foo',
column3 TEXT DEFAULT 'foo,bar'
)
我想提取從語句中的列定義,像這樣:
column Nr PRIMARY KEY
column2 TEXT DEFAULT 'foo'
column3 TEXT DEFAULT 'foo,bar'
我有什麼至今(JavaScript)的去除CREATE
部分和最後支架:
sql.replace(/^[\w\s]+\(\s+/, "").replace(/\s+\)$/, "");
我不能split()
在逗號ocurrences字符串,因爲這是一個默認值。
有什麼建議嗎?
不能拆分的'('和從第二陣列項目中刪除最後一個字符? – npinti
正則表達式是不是要走的路。你需要一個詞法分析器/分析器和AST。 – duffymo
如果列的定義總是在分隔線上,你可以用',\ s * [\ r \ n]'分割。 – sp00m