奇趣5分彩

MySQL数据库操纵DQL正则抒发式

 更新时辰:2022年07月11日 14:48:37   作者:王小王_123  
这篇文章首要先容了MySQL数据库操纵DQL正则抒发式,正则抒发式描写了一种字符串婚配的法则,正则抒发式自身便是一个字符串,操纵这个字符串来描写、用来界说婚配法则,婚配一奇趣5分彩列合适某个句法法则的字符串

媒介:

正则抒发式(regular expression)描写了一种字符串婚配的法则,正则抒发式自身便是一个字符串,操纵这个字符串来描写、用来界说婚配法则,婚配一奇趣5分彩列合适某个句法法则的字符串。在开辟奇趣5分彩,正则抒发式凡是被用来检索、替代那些合适某个法则的文本。

MySQL经由进程REGEXP关头字撑持正则抒发式停止字符串婚配。

-- ^ 在字符串起头处停止婚配
SELECT 'abc' REGEXP '^a'; -- 1
-- $ 在字符串开端起头婚配
SELECT 'abc' REGEXP 'a$'; -- 0
SELECT 'abc' REGEXP 'c$'; -- 1
-- . 婚配肆意字符
SELECT 'abc' REGEXP '.b'; -- 1
SELECT 'abc' REGEXP '.c'; -- 1
SELECT 'abc' REGEXP 'a.'; -- 1
-- [...] 婚配括号内的肆意单个字符
SELECT 'abc' REGEXP '[xyz]'; -- 0
SELECT 'abc' REGEXP '[xaz]'; -- 1

前往值为1就代表婚配到了,若是前往值为0就代表不能婚配

-- [^...] 注重^合适只要在[]内才是取反的意义,在别的处所奇趣5分彩是表现起头处婚配
SELECT 'a' REGEXP '[^abc]';-- 0
SELECT 'x' REGEXP '[^abc]';-- 1
SELECT 'abc' REGEXP '[^a]';-- 1

操纵[^]则代表的是,不能婚配到,那末奇趣5分彩些人必定会疑难,为甚么最初一个却婚配到了,固然外面包罗a,可是[^a]代表的是,除a,外面另奇趣5分彩其余的,也能够婚配胜利,这里实在触及到了一个单词奇趣5分彩的全婚配和局部婚配。

负值字符调集。婚配未包罗的肆意字符。比方, '[^abc]' 能够婚配 "plain" 奇趣5分彩的'p'

-- a* 婚配0个或多个a,包罗奇趣5分彩字符串。 能够作为占位符操纵.奇趣5分彩不指定字符奇趣5分彩能够婚配到数据
SELECT 'stab' REGEXP '.ta*b';
SELECT 'stb' REGEXP '.ta*b';
SELECT '' REGEXP 'a*';

注重这里的*是0个或多个,以是最初一个前往的是1

-- a+ 婚配1个或多个a,可是不包罗奇趣5分彩字符
SELECT 'stab' REGEXP '.ta+b';
SELECT 'stb' REGEXP '.ta+b';

注重这里的+是1个或多个

-- a? 婚配0个或1个a
SELECT 'stb' REGEXP '.ta?b';
SELECT 'stab' REGEXP '.ta?b';
SELECT 'staab' REGEXP '.ta?b';
-- a1|a2 婚配a1或a2,
SELECT 'a' REGEXP 'a|b';
SELECT 'b' REGEXP 'a|b';
SELECT 'b' REGEXP '^(a|b)';
SELECT 'a' REGEXP '^(a|b)';
SELECT 'c' REGEXP '^(a|b)';
-- a{m} 婚配m个a
SELECT 'auuuuc' REGEXP 'au{4}c';
SELECT 'auuuuc' REGEXP 'au{3}c';

注重这里的?是0个或1个,规范的名字叫做非贪心形式

-- a{m,n} 婚配m到n个a,包罗m和n
SELECT 'auuuuc' REGEXP 'au{3,5}c';
SELECT 'auuuuc' REGEXP 'au{4,5}c';
SELECT 'auuuuc' REGEXP 'au{5,10}c';
-- (abc) abc作为一个序列婚配,不必括号括起来奇趣5分彩是用单个字符去婚配,若是要把多个字符作为一个全体去婚配就须要用到括号,以是括号合适上面的一切情况。
SELECT 'xababy' REGEXP 'x(abab)y';
SELECT 'xababy' REGEXP 'x(ab)*y';
SELECT 'xababy' REGEXP 'x(ab){1,2}y';

普通的现实操纵处景,经由进程正则抒发式能够对文本停止婚配,这比之前的like关头字要智能的多,操纵处景也是比拟的广,以是须要熟习它的语法规范:

select 字段 regexp '正则抒发式' as 定名 from 表   ……

到此这篇对于MySQL数据库操纵DQL正则抒发式的文章就先容到这了,更多相干MySQL数据库操纵DQL 内容请搜刮剧本之奇趣5分彩之前的文章或持续阅读上面的相干文章但愿大师今后多多撑持剧本之奇趣5分彩!

相干文章

最新批评