问题描述
SELECT 'b' REGEXP 'b'; 匹配成功; SQL中b就是一个普通的字符b;正则中匹配的是一个字符b;
SELECT 'b' REGEXP '\b'; 匹配失败; SQL中b就是一个普通的字符b;正则中匹配的内容是 一个字符\ 和 字符b;
SELECT '\b' REGEXP '\b'; 匹配成功 ; SQL中\b 代表一个 A backspace character ; 正则中的\b 匹配的也是 A backspace character;
SELECT '\b' REGEXP '\\b'; 匹配失败 ; SQL中\b 代表一个 A backspace character ; 正则中的\\b 匹配一个字符b; \\在正则中是转义符号;
SELECT '\b' REGEXP '\\\b'; 匹配成功; SQL中\b 代表一个 A backspace character ; 正则中的\\\也把\转义为普通的字符\; 随后字符\ 和字符b结合组成 \b;
\b 又代表 A backspace character ;
现在想确认一点上面的写的内容对不对,尤其是对各个例子的理解, 希望点评一下.
下面是一些其他内容(可忽略)
SELECT 'a\b' LIKE 'a\b'; 执行成功
SELECT 'a\b' REGEXP 'a.b'; 匹配失败, . 可以匹配除了 \ 意外的任何其他字符
SELECT '2.3' REGEXP '[0-9]\\.[0-9]'; 使用\\ 进行转义
https://dev.mysql.com/doc/ref...