我試圖從插入語句中粘貼一些工作,並將它們格式化爲mysqli預準備語句。記事本+正則表達式問題
下面是一個例子:
INSERT INTO
products
(hash, name, description, large_img, small_img, label_img, category, small, large, small_price, large_price, best_seller, in_stock)
VALUES
([value-1],[value-2],[value-3],[value-4],[value-5],[value-6],[value-7],[value-8],[value-9],[value-10],[value-11],[value-12],[value-13])
所以我嘗試正則表達式:但
find: (\[.*)(])
replace: ?
,而不是替換每個[value=*]
,它取代所有的人只在一個閉合支架的最後一個實例停止。爲什麼?
輸出:
INSERT INTO
products
(id, hash, name, description, large_img, small_img, label_img, category, small, large, small_price, large_price, best_seller, in_stock)
VALUES
(?)
我怎樣才能得到它來取代它的權利。我的正則表達式不應該選擇所有東西,直到第一個右括號爲止,但是爲什麼它會選擇所有內容直到最後一個右括號?
你可以這樣做'$瓦爾=「(ID,哈希,名稱...等) '然後用'1 + countTheCommasIn($ vars)'替換implode中的'13'?同時將'products $ vars VALUES'放入SQL中 – AdrianHHH 2014-08-30 07:37:41
我不知道PHP,但是認爲你可以通過計算逗號而不是寫一個'13'來改進你的答案。您的評論顯示另一種方式。用更多選項更新你的答案可能有助於提問者和其他人。 – AdrianHHH 2014-08-30 08:00:44