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.匹配字符类

相关推荐
努力成为AK大王5 小时前
并发编程的核心挑战、优化方案与核心知识点总结
java·开发语言·数据库
En^_^Joy6 小时前
Django开发:模板系统入门指南
数据库·django·sqlite
无关86886 小时前
Redis Bitmaps 用户签到系统设计方案
数据库·redis·缓存
江华森7 小时前
FastAPI 极速开发指南 — 从零到生产级 API 实战
数据库·fastapi
左直拳7 小时前
mysql分区表自动归档
mysql·分区表·分区表归档
老纪8 小时前
Redis分布式锁进第九零篇
数据库·redis·分布式
haven-8528 小时前
MySQL事务ACID、隔离级别、MVCC、幻读解决
数据库·mysql
2301_781833528 小时前
Python 正则表达式入门教程
开发语言·python·正则表达式
小高学习java8 小时前
事务的边界问题,如何判断数据回滚时机。
java·数据库·后端
迷枫7129 小时前
【无标题】
数据库