Mysql 正则表达式字符在任何位置 AND 在第一个位置

Mysql Regexp character at any position AND at the first position

我使用 'VW' 进行搜索,我需要一个 mysql 正则表达式模式,它只能找到 VOLKSWAGEN 而不是 VOLKSWAGEN 和 VOLVO。

我先试试:

SELECT title FROM brand WHERE title REGEXP '^[VW]' 

所以我在第一个位置得到了所有带有 V 的记录。

我不知道如何结合 FIRST 字符处的条件 VANY[=36= 处的 W ]位置。

我试试 :

SELECT title FROM brand WHERE title REGEXP '^[VW]' AND title REGEXP '[VW]' 

还尝试使用 Having 子句

SELECT title FROM brand WHERE title REGEXP '[VW]' HAVING title REGEXP '^[VW]' 

我知道我们有不同的选择,我们可以为 REGEXP 设置一种 && 条件吗?

提前致谢

^V[a-zA-Z0-9]*W

试试 this.This 应该让你的单词开始 V 并在某处有 W

您不需要正则表达式。您可以只使用 like:

where title like 'V%W%'

like的优点是MySQL可以使用title上的索引来部分满足这一点(因为patter以常量开头)。