MySQL RegEx:出现错误'empty (sub)expression'来自正则表达式 [英] MySQL RegEx: Got error 'empty (sub)expression' from regexp

查看:74
本文介绍了MySQL RegEx:出现错误'empty (sub)expression'来自正则表达式的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有一列 participants,其中包含一个类似于 "99005|99001|99002|99001999|99004" 的值,它们是用户登录.

I have a column participants which contains a value like "99005|99001|99002|99001999|99004" which are user logins.

我真正想要的是匹配"99001"而不匹配"99001999".

What exactly I want is to match "99001" without matching "99001999".

这是我的方法:

SELECT * FROM `bv_sklad_products` WHERE `stage`=4 AND `participants` REGEXP ('^([^\|]+(\|))*(99001|99005)((\|)[^\|]+)*$') AND `start_date` BETWEEN '2015-07-09' AND '2015-07-10' ORDER BY `id` DESC LIMIT 0,100

我得到的错误信息:

Got error 'empty (sub)expression' from regexp

我做错了什么?

推荐答案

您可以使用单词边界.

regexp  '[[:<:]]99001[[:>:]]'

regexp '(^|[|])99001([|]|$)'

这篇关于MySQL RegEx:出现错误&amp;#39;empty (sub)expression&amp;#39;来自正则表达式的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
相关文章
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆