在postgresql中,我需要從給定列的字段中提取3個特定的字母數字字符,然後從中創建年份。所以如果字段的值是FUT,GRA,S12,1055559
或S11,1050830,PON
,我需要S11
或S12
,然後創建2011
或2012
。 結果可以保留爲文本字段。Postgres正則表達式regexp_split_to_array
我已經使用以下來獲得S??
:substring(my_field from E'(S\\d\\d),')
但創造一年似乎更具挑戰性。我希望能使用regexp_split_to_array
,但它似乎沒有工作得很好。
AFAIK,PostgreSQL的正則表達式中沒有單詞邊界,\ b表示退格。 – Toto
沒錯,請參閱http://www.postgresql.org/docs/9.1/static/functions-matching.html#POSIX-LIMITS-COMPATIBILITY – araqnid
啊,這真是一個恥辱。並且向前看被支持但不是向後看 - 會更新答案。乾杯! –