我需要使用单词边界(\y)作为条件来匹配作为查询参数搜索的确切单词。我正在编写这个正则表达式并在 PostgreSQL 中执行,但它返回 FALSE。
我的代码
text_search_value = re.escape((re.sub("\)",")",re.sub("\(","(",text_search_value))))
PostgreSQL 查询
select 'apple.' ~ '\yapple\.\y'
预期结果 在修复正则表达式的帮助下,在 PostgreSQL 表中执行时,选择查询应返回 TRUE。
抱歉,我可能会感到困惑,但如果您使用 Python 正则表达式命令,\y 不是单词边界。相反,您使用字面的“y”字母来匹配您的单词。您应该用于单词边界。正确的正则表达式语法应如下所示:
选择“苹果”。 〜'苹果'
制作