postgresql查询中的正则表达式不区分大小写

Rah*_*986 4 regex postgresql case-insensitive

我想通过另一个表的记录搜索名称列表,我希望我的正则表达式不区分大小写,但我不能让它工作!

SELECT id
  FROM "regexfreeFlickrFullInfo"
  where tags ~ 'tower\s?\*?bridge'  or title ~ 'tower\s?\*?bridge' or descriptio ~ 'tower\s?\*?bridge'  order by id asc;
Run Code Online (Sandbox Code Playgroud)

这是我的查询,我已经通过我的测试,但它没有用!

red*_*neb 14

你必须使用~*而不是~.


fra*_*acz 14

如果您想支持区分大小写和不敏感的查询而不更改查询本身,您可以使用正则表达式元语法更改运算符的行为。它们可以覆盖正则表达式运算符隐含的区分大小写的行为。

tags ~ 'Case Sensitive'
tags ~ '(?i)case insensitive'
tags ~* 'case insensitive'
tags ~* '(?c)Case Sensitive'
Run Code Online (Sandbox Code Playgroud)