我想从符合此模式的postgres表中提取特定字段:
/^Untitled Deal \d+$/
例如:
Untitled Deal 1
Untitled Deal 2
Untitled Deal 3
我在postgres中遇到了无效的查询:
SELECT "name" FROM "deals" WHERE ("name" ILIKE '/^Untitled Deal \\d+$/');
有谁可以指出我做错了什么?
答案 0 :(得分:5)
如果要对POSIX样式的正则表达式进行模式匹配,则需要使用~*
而不是ILIKE
。
即:
SELECT "name" FROM "deals" WHERE ("name" ~* E'^Untitled Deal \\d+$');
答案 1 :(得分:2)
您只需使用LIKE
和%
即,
SELECT name FROM deals WHERE name LIKE 'Untitled Deal %'