售前咨询 售后咨询
当前位置: 上海网站设计 > 建站知识 > 建站教程

PHP模糊查询技术—正则表达式匹配查询

网站编辑:小润 | 发表时间:2019-02-02 20:25:55

今天润壤网络润壤跟大家了解在网站建设中,PHP模糊查询技术—正则表达式匹配查询的知识。

先来了解一下通配符

.    “.”是号匹配任意单个字符

*   “*”匹配0个或多个在它面前的字符

          X*表示匹配任何数量的x字符

       [..] 匹配中括号的任意字符

     [abc]匹配字符ab或c 

     [a-z]匹配任意字母

     [0-9]匹配任意数字

^   “^”表示以某个字符或字符串开始

 ^a 表示以字母a开头

$   “$”表示以某个字符或字符串结尾

 a$ 表示以字母a结尾

使用正则表达式匹配模式使用操作符是REGEXP 或 NOT REGEXP(RLIKE 或NOT RLIKE)

我们通过例子来证明吧,先看我们准备的数据

#查询用户名以字符 i 开头的

正则表达式 ^i

SELECT username FROM `uweb_admin_member` WHERE username REGEXP ' ^i ';

#查询用户名以字符 r 结尾的

SQL匹配械 %r

正则表达式 r$

SELECT username FROM `uweb_admin_member` WHERE username REGEXP  ' r$ ';

结果就是以 r 结尾的用户名

#匹配以i开头,r 结尾

正则语法:^i.*r$

SELECT username FROM `uweb_admin_member` WHERE username REGEXP ' ^i.*r$ ';

#匹配6个字符长度的用户名

正则语法:......;6个点

SELECT username FROM `uweb_admin_member` WHERE username REGEXP ' ...... ';

结果是字符长度6个或以上都出来了,说明只要字符中任意满足6个长度的都会出现。如果要精确的表示多少字符长度,就在前面和后面加定界符;精确查找6个字符长度的用户名:^......$

关键字:
官方微信
上海市长宁区宣化路300号华宁国际广场中区7层
+021-8031 0607
+135 8590 1130