
发表日期: 2022-09-09 14:04:13 浏览次数:168
上往建站专注于企业网站建设服务,提供网站开发,网站定制,建网站,网站搭建,网站设计,响应式网站制作,网络营销,网站建设,移动端建设,响应式网站,手机网站建设,小程序开发,微信网站制作,网站改版,SEO网站优化,在建设网站时就考虑整站优化,使网站排名靠前,提升网站价值。
比H5更稳定,比APP更方便
一体化营销
曹县网站设计

应用示例,查找用户表中 Email 格式错误的用户记录:
SELECT * FROM users
WHERE email NOT REGEXP '^[A-Z0-9._%-]+@[A-Z0-9.-]+.[A-Z]{2,4}$'MySQL 数据库中正则表达式的语法,主要包括各种符号的含义。
^ 字符
匹配字符串的开始位置,如 ^a 表示以字母 a 开头的字符串。
mysql> select 'xxxyyy' regexp '^xx'; +-----------------------+| 'xxxyyy' regexp '^xx' |+-----------------------+| 1 |+-----------------------+1 row in set (0.00 sec)
查询 xxxyyy 字符串中是否以 xx 开头,结果值为 1,表示值为 true,满足条件。
$ 字符
匹配字符串的结束位置,如 X$ 表示以字母 X 结尾的字符串。
. 字符
这个字符就是英文下的点,它匹配任何一个字符,包括回车、换行等。
* 字符
星号匹配 0 个或多个字符,在它之前必须有内容。如:
mysql> select 'xxxyyy' regexp 'x*';
这个 SQL 语句,正则匹配为 true。
+ 字符
加号匹配 1 个或多个字符,在它之前也必须有内容。加号跟星号的用法类似,只是星号允许出现 0 次,加号则必须至少出现一次。
? 字符
问号匹配 0 次或 1 次。
实例:
现在根据上面的表,可以装置各种不同类型的 SQL 查询以满足要求。在这里列出一些理解。考虑我们有一个表 为person_tbl 和有一个字段名为 name。
查询找到所有的名字以 st 开头:
mysql> SELECT name FROM person_tbl WHERE name REGEXP '^st';
查询找到所有的名字以 ok 结尾:
mysql> SELECT name FROM person_tbl WHERE name REGEXP 'ok$';
查询找到所有的名字包函 mar 的字符串:
mysql> SELECT name FROM person_tbl WHERE name REGEXP 'mar';
查询找到所有名称以元音开始和 ok 结束的:
mysql> SELECT name FROM person_tbl WHERE name REGEXP '^[aeiou]|ok$';
一个正则表达式中的可以使用以下保留字。
^
所匹配的字符串以后面的字符串开头:
mysql> select "fonfo" REGEXP "^fo$"; -> 0(表示不匹配) mysql> select "fofo" REGEXP "^fo"; -> 1(表示匹配)
$
所匹配的字符串以前面的字符串结尾:
mysql> select "fono" REGEXP "^fono$"; -> 1(表示匹配) mysql> select "fono" REGEXP "^fo$"; -> 0(表示不匹配)
.
匹配任何字符(包括新行):
mysql> select "fofo" REGEXP "^f.*"; -> 1(表示匹配) mysql> select "fonfo" REGEXP "^f.*"; -> 1(表示匹配)
a*
匹配任意多个 a(包括空串):
mysql> select "Ban" REGEXP "^Ba*n"; -> 1(表示匹配) mysql> select "Baaan" REGEXP "^Ba*n"; -> 1(表示匹配) mysql> select "Bn" REGEXP "^Ba*n"; -> 1(表示匹配)
a+
匹配任意多个 a(不包括空串):
mysql> select "Ban" REGEXP "^Ba+n"; -> 1(表示匹配) mysql> select "Bn" REGEXP "^Ba+n"; -> 0(表示不匹配)
a?
匹配一个或零个 a:
mysql> select "Bn" REGEXP "^Ba?n"; -> 1(表示匹配) mysql> select "Ban" REGEXP "^Ba?n"; -> 1(表示匹配) mysql> select "Baan" REGEXP "^Ba?n"; -> 0(表示不匹配)
de|abc
匹配 de 或 abc:
mysql> select "pi" REGEXP "pi|apa"; -> 1(表示匹配) mysql> select "axe" REGEXP "pi|apa"; -> 0(表示不匹配) mysql> select "apa" REGEXP "pi|apa"; -> 1(表示匹配) mysql> select "apa" REGEXP "^(pi|apa)$"; -> 1(表示匹配) mysql> select "pi" REGEXP "^(pi|apa)$"; -> 1(表示匹配) mysql> select "pix" REGEXP "^(pi|apa)$"; -> 0(表示不匹配)
(abc)*
网站优化,按词、按效果收费,快速提升关键词排名
手机/微信网站开发
一个后台管理多个终端,利于优化推广实现在手机等移动端小屏幕多屏幕上的“跨屏整合”
服务热线:400-111-6878 手机微信同号:18118153152(各城市商务人员可上门服务)
备案号: 苏ICP备20012587号-8
CopyRight © 2021 常州通陆信息科技有限公司 All Right Reserved 未经许可不得复制转载
24小时服务热线:400-111-6878 E-MAIL:1120768800@qq.com QQ:1120768800
网址:http://www.768800.store/ 网站建设:上往建站
关键词: 昆山网站建设| 昆山域名邮箱| 昆山服务器空间| 昆山网站推广| 昆山书生商友| 昆山网站制作| 昆山网站设计| 昆山域名注册| 昆山网络营销| 昆山网站维护|
昆山企业邮箱| 昆山虚拟主机| 昆山网络建站| 昆山网站服务| 昆山网页设计| 昆山网店美工设计| 昆山网站定制| 昆山企业建站| 昆山网站设计制作| 昆山网页制作公司
欢迎您免费咨询,请填写以下信息,我们收到后会尽快与您联系
全国服务热线:400-111-6878