MySQL REGEXP 语句不应该返回 true?

标签 mysql regex

SELECT 
'8 / 10 Valle Seti'
REGEXP
'([1-9][0-9]|[2-9][0-9]) (Valle Seti)'

这在 mysql 中返回 1。这怎么可能?我只指定了两个大于 10 的数字,后跟一个单词,但这是匹配一个数字,后跟一个斜线,然后是一个两位数。我在这里遗漏了什么吗?

最佳答案

你的正则表达式匹配

'10 Valle Seti'

来自

'8 / 10 Valle Seti'

要强制正则表达式在字符串末尾开始和结束,将其更改为

REGEXP
'^([1-9][0-9]|[2-9][0-9]) (Valle Seti)$'

关于MySQL REGEXP 语句不应该返回 true?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12793088/

相关文章:

Python 正则表达式创建

regex - 如何匹配两个文件并按列过滤第三个文件的匹配值?

MySQL:SELECT 重复输入错误...INSERT INTO 带有 UNIQUE 约束

mysql - 将 PostgreSQL 转储文件转换为 MySQL?

c++ - MSVC 正则表达式匹配

javascript - 如何替换字符串中的多个字符?

Javascript RegExp 用于将文本分割成句子并保留分隔符

mysql - 如何返回一些带有时间间隔的 * 数据?

php - 在 Ubuntu 上安装 Joomla

php - 试图在 sql 查询中获取非对象的属性