网络安全入门学习第五课——MySQL正则表达式查询



前言

是用某种模式去匹配一类字符串的一一个方式。例如,使用正则表达式可以查询出包含A、B和C其中任一字母的字符串。正则表达式的查询能力比通配字符的查询能力更强大,而且更加的灵活。正则表达式可以应用于非常复杂查询。

使用REGEXP关键字来匹配查询正则表达式。

语法:属性名 REGEXP '匹配方式'
“属性名”参数表示需要查询的字段的名称;
“匹配方式” 参数表示以哪种方式来进行匹配查询。


汇总表

模式描述
^匹配输入字符串的开始位置。如果设置了 RegExp 对象的 Multiline 属性,^ 也匹配 ‘\n’ 或 ‘\r’ 之后的位置。
$匹配输入字符串的结束位置。如果设置了RegExp 对象的 Multiline 属性,$ 也匹配 ‘\n’ 或 ‘\r’ 之前的位置。
.匹配字符串中的任意一个字符。
[…]字符集合。匹配所包含的任意一个字符。例如, ‘[abc]’ 可以匹配 “plain” 中的 ‘a’。
[^…]负值字符集合。匹配未包含的任意字符。例如, ‘[^abc]’ 可以匹配 “plain” 中的’p’。
p1|p2|p3匹配 p1 或 p2 或 p3。例如,‘z|food’ 能匹配 “z” 或 “food”。‘(z|f)ood’ 则匹配 "zood"或 “food”。
匹配前面的子表达式零次或多次。例如,zo* 能匹配 “z” 以及 “zoo”。* 等价于{0,}。
+匹配前面的子表达式一次或多次。例如,‘zo+’ 能匹配 “zo” 以及 “zoo”,但不能匹配 “z”。+ 等价于 {1,}。
{m}m是一个非负整数。匹配确定的 m 次。例如,‘o{2}’ 不能匹配 “Bob” 中的 ‘o’,但是能匹配 "food"中的两个 o
{m,n}m 和 n 均为非负整数,其中m <= n。最少匹配m次且最多匹配 n次。

一、“^”

“^”查询以特定字符或者字符串开头的记录
在这里插入图片描述


二、“$”

“$”查询以特定字符或者字符串结尾的记录
在这里插入图片描述


三、“.”

“.”匹配字符串中的任意一个字符
在这里插入图片描述


四、“.”和“_”的区别

  • 两个都可以代替任意一个字符进行查询。
  • “.”只能用于regexp关键字进行匹配,不能用于like匹配
  • “_”不能用于regexp关键字进行匹配,只能用于like匹配

在这里插入图片描述
在这里插入图片描述


五、‘[ ]’

[…]字符集合。匹配所包含的任意一个字符
在这里插入图片描述
[]可以指定集合的区间。如:[a-z],[1-9]


六、“[^字符集合]”

匹配指定字符以外的字符
在这里插入图片描述


七、匹配指定字符串

正则表达式可以匹配字符串。当表中的记录包含这个字符串时,就可以将该记录查询出来。如果指定多个字符串时,需要用符号“ | ”隔开。只要匹配这些字符串中的任意一个即可。
在这里插入图片描述


八、“*”和“+”

匹配多个字符,*和+都可以匹配多个该符号之前的字符。

  • “+”:至少表示1个字符
  • “*”:可以表示0个字符

在这里插入图片描述


九、‘{m}’或者’{m,n}’来指定字符串连续出现的次数

  • {m}:m是一个非负整数。匹配确定的 m 次。
  • {m,n}:m 和 n 均为非负整数,其中m <= n。

在这里插入图片描述


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值