英国邮政区MySQL Regexp

英国邮政区MySQL Regexp,mysql,regex,Mysql,Regex,我需要邮政区域(第一个字母)与我的字符串匹配的所有邮政编码 邮政编码示例: SW12 3AB S12 3AB 如果我的邮政区域字符串为“s”,则它应仅返回S12 3AB 如果我的邮政区域字符串为“sw”,则只应返回SW12 3AB 这是我的疑问: SELECT ID, Postcode FROM order WHERE Postcode REGEXP '^s[0-9].*' 在花了几个小时阅读手册后,我发现这个语法没有问题。 -邮政编码必须以我的字符串开头 -字符串后面必须跟一个数字 -之

我需要邮政区域(第一个字母)与我的字符串匹配的所有邮政编码

邮政编码示例:

SW12 3AB
S12 3AB
如果我的邮政区域字符串为“s”,则它应仅返回
S12 3AB

如果我的邮政区域字符串为“sw”,则只应返回
SW12 3AB

这是我的疑问:

SELECT ID, Postcode
FROM order 
WHERE Postcode REGEXP '^s[0-9].*'
在花了几个小时阅读手册后,我发现这个语法没有问题。 -邮政编码必须以我的字符串开头 -字符串后面必须跟一个数字 -之后什么都可能发生


不幸的是,它没有返回任何记录。我做错了什么?

我发现了问题,觉得自己很傻

没有英国邮政编码区域“S”,因此未找到任何匹配项

它与这些“N”和“NW”以及所有其他有效区域完美配合


如果有办法的话,我很想把这篇文章删掉。道歉

可能是您的
s
'^s[0-9].*.
中是小写,而在邮政编码中是大写的
s
?默认情况下,大多数regex香料都区分大小写。试试
“^[sS][0-9]”
(你可以编辑
*
,因为你没有匹配字符串的结尾)。@funkworm,省略
*
是一个很好的提示,谢谢。不幸的是,案例敏感性不是一个问题。尝试了很多方法。。。