MySQL通配符和正则表达式

一、通配符

1.%

匹配0,1,多个字符,但不匹配NULL

2._

匹配单个字符

3.[charlist]

匹配字符列中的任何单一字符

4.[^charlist] 或 [!charlist]

匹配不在字符列中的任何单一字符

二、正则表达式

通配符的LIKE替换为REGEXP

LIKE 匹配整个列, REGEXP 在列值内进行匹配

要区分大小写,需要写作REGEXP BINARY 'Hern .000'

1.元字符

.匹配任意一个字符;

*匹配0次或多次; ?匹配0次或1次;

+匹配1次或多次;

()组合;

{}量词,{m} 匹配某个字符正好 m 次,{m,} 匹配某个字符至少 m 次,{m,n} 匹配某个字符至少 m 次,但不超过 n 次;

^匹配字符串的开始; ^有两种用法。在集合中(用[和]定义),用它来否定该集合,否则,用来指串的开始处

$匹配字符串的结束。

2.or匹配

使用|,如 REGEXP '100|200'

3.匹配几个字符之一

charlist

4.匹配范围

0123456789\]可以简化为\[0-9\], 英文字母表可以简写为\[a-z

5.匹配特殊字符

用\防止转义

6.匹配字符类

相关推荐
IT摆渡者1 小时前
MySQL性能巡检脚本分析报告
数据库·mysql
Lyyaoo.2 小时前
Redis基础
数据库·redis·缓存
杨云龙UP2 小时前
ODA登录ODA Web管理界面时提示Password Expired的处理方法_20260423
linux·运维·服务器·数据库·oracle
解救女汉子2 小时前
SQL触发器如何获取触发源应用名_利用APP_NAME函数追踪
jvm·数据库·python
weixin_520649874 小时前
数据库函数
数据库
Bert.Cai4 小时前
MySQL LPAD()函数详解
数据库·mysql
OnlyEasyCode6 小时前
Navicat 任务自动备份指定数据库
数据库
if else6 小时前
Redis 哨兵集群部署方案
数据库·redis
yejqvow126 小时前
Pandas 高效实现组内跨行时间戳匹配与布尔标记
jvm·数据库·python
了不起的云计算V6 小时前
从DeepSeek V4适配看国产算力的三个拐点
数据库·人工智能