-3

我正在尝试为我的 MYSQL 查询中的主搜索创建一个简单的正则表达式。

我想要做的就是返回一个匹配项,即使该值中有空格而我的搜索值没有。

例如

如果用户输入“JoeBlogs”并且我尝试将其与客户全名匹配,我希望即使 joe 和博客之间有空格也能返回客户。乔博客

不想在我的 where 子句中使用 REPLACE,因为我知道这可能非常昂贵。

目前只是在寻找这样的完全匹配。

WHERE client_name RLIKE '^joeblogs'

我认为这对于正则表达式来说非常简单,但还没有开始学习正则表达式

谢谢

4

1 回答 1

0
REGEXP 'Joe ?Briggs'

问号表示它前面的字符是可选的。

如果你需要它“锚定”:

REGEXP '^Joe ?Briggs$'

现在,在名称之前或之后都不能存在任何东西。也就是说,“Joe Briggsworth”将不匹配。

用于在字符串中间单词边界处查找名称:

REGEXP '[[:<:]]Joe ?Briggs[[:>:]]'
于 2018-03-21T02:06:21.310 回答