首页 > mysql正则匹配

mysql正则匹配

我希望用mysql正则匹配这样的字符串:alpha alpha(1) alpha(2)
但是不能匹配alpha( 1) alpha(3c)这样的子串 也就是说括号里必须是数字 并且括号在最后出现也可以不出现
我写了一个但是不大对 麻烦各位大虾看一下 指正错误 ^alpha(\(\d+\))?$

mysql版本Ver 14.14 Distrib 5.5.47


select name from test where name REGEXP '^alpha(\\([0-9]+\\))?$';
或者
select name from test where name REGEXP '^alpha(\\([[:digit:]]+\\))?$';

字符串中的 () 在进行转义的时候, 前面的 \ 要写两次.
其次 mysql 的正则中没有 \d 这个东东.

【热门文章】
【热门文章】