在PostgreSQL中,我在列中有两种记录:
ABCD-XYZE12-G56
和ABCD-XYZE-G56
。
在两者中,我都希望摆脱G56
并分别选择每个。
所以我要查找的查询(BCD-XYZE12)是:
SELECT SUBSTRING(string, '[A-Z]+-[A-Z0-9]+') from table;
但它也匹配:ABCD-XYZE
。
答案 0 :(得分:0)
尝试使用正则表达式:^[A-Z]+-(?=[A-Z0-9]*[0-9])[A-Z0-9]+
返回类型为ABCD-XYZE12的记录
答案 1 :(得分:0)