【发布时间】:2020-08-28 09:17:39
【问题描述】:
我有一个 MySQL 表包含英国地址列表,我试图获取地址列表中没有邮政编码。
我在列表中,我们可以看到其中一些在末尾没有邮政编码。
我写了如下查询,没有得到预期的结果。
select * from property_address WHERE property_address
REGEXP '^([A-PR-UWYZ0-9][A-HK-Y0-9][AEHMNPRTVXY0-9]?[ABEHMNPRVWXY0-9]? {1,2}[0-9][ABD-HJLN-UW-Z]{2}|GIR 0AA)$'
如何修复这个查询?
【问题讨论】:
-
如何定义邮政编码?
-
剥离最后 2 个标记(使用 SUBSTRING_INDEX)并测试它们是否与邮政编码模式匹配。
-
@Akina 有空格?
-
我不知道什么是英国邮政编码模式。
-
@ShijinTR: 你不只是想从正则表达式中删除前导
^,所以它匹配在字符串的末尾而不是整个字符串?
标签: mysql regex postal-code