2016 - 2024

感恩一路有你

正则表达式模糊查询 MySQL模糊查询like和ilike的区别?

浏览量:2418 时间:2021-03-13 18:17:52 作者:admin

MySQL模糊查询like和ilike的区别?

LIKE 和 ILIKE 操作符可以模糊匹配字符串,LIKE是一般用法,ILIKE匹配时则不区分字符串的大小写,~ 波浪号则可以使用正则匹配。


LIKE和 ILIKE


它们需要结合通配符使用,下面介绍两种常用的通配符。

%:百分号用于匹配字符串序列,可匹配任意组合;

_:下划线用于匹配任何单一字符。


则可以使用正则模式来匹配字符串,除此之外它匹配模式还有一个特殊的地方

select * from table where ~ "ab" --> 如果是这样的形式就代表着他可以匹配任何包含ab的字符串其实就相当于省略的两边的 .*


如果想要做前缀匹配或后缀匹配,可以用下面的方法

1、前缀 模糊查询。

select * from table where ~ "^ab"


2、后缀 模糊查询。

select * from table where ~ "ab$"

正则表达式不匹配某些字符串?

直接找不含exp字符的单词正则是实现不了的.

不过可以取巧,找到含exp字符单词,然后把这些单词替换成空字符串,然后再在替换好的字符串里面找单词

找含exp的单词的正则

(?=[A-Za-z]*exp[A-Za-z]*)[A-Za-z]*

匹配替换后的字符串的字符的正则

[A-Za-z]*

如图

用正则怎么进行汉字的模糊匹配?

这个不需要正则函数吧,我用MATLAB来判断的话,直接用一个findstr命令就可以了,比如a="张三的歌",b=findstr(a,"张三"),结果就会返回张三所在的位置,应该是1。正则函数一般是匹配一般性的数字,或者字母,日期等,汉字的话一般是用[一-龥]来匹配。

正则表达式模糊查询 正则匹配特定字符串 正则匹配多个字符串

版权声明:本文内容由互联网用户自发贡献,本站不承担相关法律责任.如有侵权/违法内容,本站将立刻删除。