正则表达式模糊查询 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。正则函数一般是匹配一般性的数字,或者字母,日期等,汉字的话一般是用[一-龥]来匹配。
版权声明:本文内容由互联网用户自发贡献,本站不承担相关法律责任.如有侵权/违法内容,本站将立刻删除。