1
SELECT 'pharase' REGEXP '[^a-zA-Z]+'
- 验证该短语不包含英文字符(或不是?)。MySQL REXEXP不起作用
为什么查询SELECT '123g' REGEXP '[^a-zA-Z]+' -> 1
显示1而不是0?
SELECT 'pharase' REGEXP '[^a-zA-Z]+'
- 验证该短语不包含英文字符(或不是?)。MySQL REXEXP不起作用
为什么查询SELECT '123g' REGEXP '[^a-zA-Z]+' -> 1
显示1而不是0?
要检查一个字符串只包含英文字符,使用
SELECT 'pharase' REGEXP '^[a-zA-Z]+$'
其中:
^
- 断言的位置在字符串[a-zA-Z]+
的开始 - 1个或多个ASCII字母$
- 字符串末尾SELECT '123g' REGEXP '[^a-zA-Z]+' -> 1
显示1
因为字符串包含123
,非字母,部分匹配找到具有REGEXP
(不像LIKE
需要一个完整的字符串匹配)。
您可以使用'NOT REGEXP'[A-Za-z]'来获取不包含英文字母的条目。或'REGEXP'^ [^ A-Za-z] + $'' –
如何在不使用'NOT REGEXP'('NOT REGEXP [a-zA-z]')的情况下检查短语是否包含英文字符? – sibipi
请检查我上面更新的评论。 –