我如何找到不包含数字后跟空格的地址记录? (例如,15SMith St.而不是15 Smith St)
WHERE a.address not like '.[0-9] .'
显然不适合我。
答案 0 :(得分:2)
您可以将SIMILAR TO
与NOT
一起使用,并使用一种模式,即LIKE表示法和常用正则表达式表示符#34;之间的奇怪交叉。它支持[0-9]
:
括号表达式
[...]
指定一个字符类,就像在POSIX正则表达式中一样。
所以,你可以使用
WHERE a.address NOT SIMILAR TO '%[0-9] %'
此处,%
匹配任意数量的字符,[0-9]
匹配任何数字,空格匹配空格,然后%
再匹配任意数量的字符。这些%
是必需的,因为SIMILAR TO
需要完整的字符串匹配,与LIKE
相同。