我希望匹配所有名字,然后 2个或更多空格和姓氏的名称。这应该是微不足道的,但我遇到了麻烦。
假设我的表格KCChiefs
如此填充:
player
---------------
Matt Cassel
Jamaal Charles
Thomas Jones
Dwayne Bowe
Tony Moeaki
88 TonyG
TylerTh1gpen
注意:Cassel,Charles和Moeaki有2个空格分隔他们的名字和姓氏。
目前,我在SQL语句中的正则表达式如下:
SELECT * FROM KCChiefs WHERE player REGEXP '^[A-Za-z]+[:space:]{2,}[A-Za-z]+$'
据我了解,我的模式匹配
但是,我最终得到了一个空结果集。额外的一双眼睛可以帮助我看到我没看到的(或误解)吗?
答案 0 :(得分:5)
尝试
SELECT * FROM KCChiefs WHERE player REGEXP '^[A-Za-z]+[[:space:]]{2,}[A-Za-z]+$'
否则[:space:]
将被解释为“:
,s
,p
,a
,c
或{{中的一个字符1}}”。
答案 1 :(得分:3)
我相信你有正确的正则表达式,但语法不正确。请使用^[a-Za-z]+[[:space:]]{2,}[A-Za-z]+$
尝试。
答案 2 :(得分:3)
我相信你的角色类不正确。试试[[:space:]]