如果输入字符串与正则表达式 pat
匹配,MySQL 的 REGEXP_LIKE(~)
方法将返回 1。如果没有匹配则返回 0。
参数
1. expr
| string
要检查是否与正则表达式模式匹配的字符串。
2. pat
| regular expression
用于匹配的正则表达式模式。
3. match_type
| string
| optional
指定如何执行匹配。可以指定多个匹配类型,但是,如果提供的匹配类型之间存在矛盾,则右侧的匹配类型优先。
match_type |
意义 |
---|---|
|
区分大小写的匹配 |
|
不区分大小写的匹配 |
|
Multiple-line模式。识别字符串中的行终止符。默认行为是仅在字符串表达式的开头和结尾匹配行终止符。 |
|
|
|
Unix-only 行结尾。仅换行符被识别为以 |
例子
考虑下表有关一些学生的信息:
student_id |
名称 |
名字 |
day_enrolled |
年龄 |
用户名 |
---|---|---|---|---|---|
1 |
Sky |
Towner |
2015-12-03 |
17 |
stowner1 |
2 |
Ben |
Davis |
2016-04-20 |
19 |
bdavis2 |
3 |
Travis |
Apple |
2018-08-14 |
18 |
tapple3 |
4 |
Arthur |
David |
2016-04-01 |
16 |
adavid4 |
5 |
Benjamin |
Town |
2014-01-01 |
17 |
btown5 |
可以使用此处的代码创建上述示例表。
返回值
返回值取决于以下情况:
案子 |
返回值 |
---|---|
输入字符串与正则表达式模式匹配 |
1 |
输入字符串与正则表达式模式不匹配 |
0 |
基本用法
检查学生姓氏是否与正则表达式模式 '[ae]'
匹配:
SELECT lname, REGEXP_LIKE(lname,'[ae]')
FROM students;
+--------+---------------------------+
| lname | REGEXP_LIKE(lname,'[ae]') |
+--------+---------------------------+
| Towner | 1 |
| Davis | 1 |
| Apple | 1 |
| David | 1 |
| Town | 0 |
+--------+---------------------------+
只有 'Town'
返回 0,因为它不包含 'a'
或 'e'
。
匹配类型参数
要通过指定匹配类型 'c'
执行区分大小写的匹配:
SELECT REGEXP_LIKE('ABC DEF GHI', '[a-z]+', 'c');
+-------------------------------------------+
| REGEXP_LIKE('ABC DEF GHI', '[a-z]+', 'c') |
+-------------------------------------------+
| 0 |
+-------------------------------------------+
大写字符串 'ABC DEF GHI'
与正则表达式 '[a-z]+'
不匹配,因为匹配区分大小写。
相关用法
- MySQL REGEXP_INSTR()用法及代码示例
- MySQL REGEXP_SUBSTR()用法及代码示例
- MySQL REGEXP_INSTR方法用法及代码示例
- MySQL REGEXP_REPLACE方法用法及代码示例
- MySQL REGEXP_REPLACE()用法及代码示例
- MySQL REGEX用法及代码示例
- MySQL REPEAT()用法及代码示例
- MySQL REPLACE()用法及代码示例
- MySQL REPEAT方法用法及代码示例
- MySQL REPLACE方法用法及代码示例
- MySQL REVERSE()用法及代码示例
- MySQL REVERSE方法用法及代码示例
- MySQL ROUND()用法及代码示例
- MySQL RADIANS方法用法及代码示例
- MySQL RPAD()用法及代码示例
- MySQL RLIKE用法及代码示例
- MySQL RIGHT JOIN用法及代码示例
- MySQL ROW_NUMBER()用法及代码示例
- MySQL RTRIM方法用法及代码示例
- MySQL RIGHT()用法及代码示例
- MySQL RADIANS()用法及代码示例
- MySQL ROUND方法用法及代码示例
- MySQL RAND()用法及代码示例
- MySQL RIGHT方法用法及代码示例
- MySQL RPAD方法用法及代码示例
注:本文由纯净天空筛选整理自Arthur Yanagisawa大神的英文原创作品 MySQL | REGEXP_LIKE method。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。