2011-08-03 82 views

回答

4

提取序列名稱它沒有在最後的SQL級我檢查支持它,但你可以使用plperl在絕對必要的,以解決此限制。 (雖然重型regexing通常不屬於數據庫級別,但...)

在您的特定示例中,請考慮使用負類替代:[^'](根據需要轉義它)或non-greedy wildcard: .*?

添加到該重新您的具體問題,除非你確實創建序列手動它的名字將永遠是:

tablename_colname_seq 

此外FWIW,下面的兩個默認有不同的行爲,如果你使用多個模式和搜索

nextval('foo'::regclass) -- find foo once 
nextval('foo'::text)  -- find foo each time 
+4

向前看符號在工作,回顧後不 – danidacar

+0

有時回顧後可以與捕獲組一側的交替更換,如下解釋:http://www.rexegg.com/regex-在您的應用程序路徑最佳trick.html –