PostgreSQL:模式匹配操作符

Ryan_Bai發表於2020-12-19

三種模式匹配的方法

  • 傳統 SQL 的 LIKE 操作符。

  • SQL99 新增的 SIMILAR TO 操作符

  • POSIX 風格的正規表示式

LIKE 操作符

  • %:代表 0 個活任意個字元

  • _:代表任意一個字元

  • \:用於轉譯 % 和 _

  • ESCAPE:使用指定成其他的字元

  • \\:連續兩個轉義符去除其特殊的意義。

  • ~~:等效於 LIKE

  • ~~*:等效於 ILIKE

  • !~~:等效於 NOT LIKE

  • !~~*:等效於 NOT ILIKE

SIMILAR TO 操作符

  • 只有匹配整個字串時才能成功,也使用下劃線和百分號進行匹配

  • 也支援如下與 POSIX 正規表示式相同的模式匹配元字元

    • |:表示兩個候選項之一

    • *:表示重複前面的項零次或更多次

    • +:表示重複前面的項一次或更多次

    • ?:表示重複前面的項零次或一次

    • {m}:表示重複前面的項 m 次

    • {m,}:表示重複前面的項 m 次或更多次

    • {m,n}:表示重複前面的項至少 m 次,不超過 n 次。

    • ():可以作為專案分組到一個獨立的邏輯項中。

    • [...]:宣告一個字元類,就像 POSIX 正規表示式

正規表示式操作符

  • ~:匹配正規表示式,區分大小寫。

  • ~*:匹配正規表示式,不分大小寫。

  • !~:不匹配正規表示式,區分大小寫

  • !~*:不匹配正規表示式,不分大小寫。

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/31490526/viewspace-2743596/,如需轉載,請註明出處,否則將追究法律責任。

相關文章