MySQL RLIKE 操作符

2025年3月17日 | 阅读 3 分钟

MySQL 中的 RLIKE 操作符用于模式匹配。它用于确定给定字符串是否与正则表达式匹配。如果字符串与正则表达式匹配,则返回 1,如果未找到匹配项,则返回 0。此操作符返回的结果与 REGEXP_LIKE() 函数 类似。因此,RLIKE 操作符是 REGEXP_LIKE() 函数的同义词。

语法

以下是在 MySQL 中使用此运算符的基本语法

在此语法中,expression 是我们将执行搜索的输入字符串,用于匹配正则表达式。而 pattern 代表我们正在测试字符串的正则表达式

此语法通常与 SELECT 语句一起使用,如下所示

通过示例,让我们了解此操作符在 MySQL 中是如何工作的。

示例

下面的语句是 RLIKE 操作符最基本的示例。在这里,我们仅使用一个字符串并比较输入字符串的任何部分是否与模式匹配以获得结果。

这是结果:

MySQL RLIKE Operator

假设我们有一个名为 **student_info** 的表,其中包含以下数据。我们将基于此表数据演示各种示例。

MySQL RLIKE Operator

如果我们想获取主题以“s 或 y”字母结尾的学生的姓名、主题和分数,我们可以使用以下语句获取这些详细信息

执行该语句,我们将获得所需的结果。请参见下面的输出:

MySQL RLIKE Operator

下面的语句是另一个示例,其中我们使用了正则表达式字符点 (.),它表示在此位置可以没有字符、一个字符或多个字符

执行该语句,我们将获得所需的结果。请参见下面的输出:

MySQL RLIKE Operator

MySQL NOT RLIKE 操作符

它是用于模式匹配的RLIKE 操作符的否定。此操作符确定输入字符串中是否存在模式。如果字符串与正则表达式不匹配,则返回 0,如果找到匹配项,则返回 1。我们可以按如下方式使用此操作符

上述操作符等同于以下语法

在此语法中,expression 是我们将执行搜索的输入字符串,用于匹配正则表达式。而 pattern 代表我们正在测试字符串的正则表达式。

此语法通常与 SELECT 语句一起使用,如下所示

通过示例,让我们了解此操作符在 MySQL 中是如何工作的。

示例

下面的语句是 NOT RLIKE 操作符最基本的示例。在这里,我们仅使用一个字符串并比较输入字符串的任何部分是否与模式不匹配。

我们将得到以下结果。这里模式匹配,因为输入字符串以 Java 开头。由于我们使用 NOT RLIKE 操作符,它返回否定结果 (0)。

上述语句等同于执行此操作


MySQL RLIKE Operator

这是另一个给出结果 1 的示例。它表示字符串与给定模式不匹配。

这是输出

MySQL RLIKE Operator

让我们根据上面的 student_info 表查看一些其他示例.

以下语句返回主题不以“s 或 y”字母结尾的学生姓名、主题和分数

执行该语句,我们将获得所需的结果。请参见下面的输出:

MySQL RLIKE Operator

以下语句返回姓名不包含四个字符的学生详细信息

在这里,我们使用了'^' 和 '$ 元字符,它们匹配学生姓名的开头结尾,并在中间重复任何字符 '.' {4} 次。请看下面的输出

MySQL RLIKE Operator