麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 編程 > Regex > 正文

mysql正則表達式 LIKE 通配符

2020-03-16 21:15:16
字體:
來源:轉載
供稿:網友
由MySQL提供的模式匹配的其他類型是使用擴展正則表達式。當你對這類模式進行匹配測試時,使用REGEXP和NOT REGEXP操作符(或RLIKE和NOT RLIKE,它們是同義詞)。
 
 
擴展正則表達式的一些字符是: 

“.”匹配任何單個的字符。 
一個字符類“[...]”匹配在方括號內的任何字符。例如,“[abc]”匹配“a”、“b”或“c”。為了命名字符的一個范圍,使用一個“-”。“[a-z]”匹配任何小寫字母,而“[0-9]”匹配任何數字。 
“ * ”匹配零個或多個在它前面的東西。例如,“x*”匹配任何數量的“x”字符,“[0-9]*”匹配的任何數量的數字,而“.*”匹配任何數量的任何東西。 
正則表達式是區分大小寫的,但是如果你希望,你能使用一個字符類匹配兩種寫法。例如,“[aA]”匹配小寫或大寫的“a”而“[a-zA-Z]”匹配兩種寫法的任何字母。 
如果它出現在被測試值的任何地方,模式就匹配(只要他們匹配整個值,SQL模式匹配)。 
為了定位一個模式以便它必須匹配被測試值的開始或結尾,在模式開始處使用“^”或在模式的結尾用“$”。 
為了說明擴展正則表達式如何工作,上面所示的LIKE查詢在下面使用REGEXP重寫: 
為了找出以“b”開頭的名字,使用“^”匹配名字的開始并且“[bB]”匹配小寫或大寫的“b”: 

mysql> SELECT * FROM pet WHERE name REGEXP "^[bB]"; 
+--------+--------+---------+------+------------+------------+ 
| name | owner | species | sex | birth | death | 
+--------+--------+---------+------+------------+------------+ 
| Buffy | Harold | dog | f | 1989-05-13 | NULL | 
| Bowser | Diane | dog | m | 1989-08-31 | 1995-07-29 | 
+--------+--------+---------+------+------------+------------+ 
為了找出以“fy”結尾的名字,使用“$”匹配名字的結尾: 
mysql> SELECT * FROM pet WHERE name REGEXP "fy$"; 
+--------+--------+---------+------+------------+-------+ 
| name | owner | species | sex | birth | death | 
+--------+--------+---------+------+------------+-------+ 
| Fluffy | Harold | cat | f | 1993-02-04 | NULL | 
| Buffy | Harold | dog | f | 1989-05-13 | NULL | 
+--------+--------+---------+------+------------+-------+ 
為了找出包含一個“w”的名字,使用“[wW]”匹配小寫或大寫的“w”: 
mysql> SELECT * FROM pet WHERE name REGEXP "[wW]"; 
+----------+-------+---------+------+------------+------------+ 
| name | owner | species | sex | birth | death | 
+----------+-------+---------+------+------------+------------+ 
| Claws | Gwen | cat | m | 1994-03-17 | NULL | 
| Bowser | Diane | dog | m | 1989-08-31 | 1995-07-29 | 
| Whistler | Gwen | bird | NULL | 1997-12-09 | NULL | 
+----------+-------+---------+------+------------+------------+ 
既然如果一個正規表達式出現在值的任何地方,其模式匹配了,就不必再先前的查詢中在模式的兩方面放置一個通配符以使得它匹配整個值,就像如果你使用了一個SQL模式那樣。 

為了找出包含正好5個字符的名字,使用“^”和“$”匹配名字的開始和結尾,和5個“.”實例在兩者之間: 
mysql> SELECT * FROM pet WHERE name REGEXP "^.....$"; 
+-------+--------+---------+------+------------+-------+ 
| name | owner | species | sex | birth | death | 
+-------+--------+---------+------+------------+-------+ 
| Claws | Gwen | cat | m | 1994-03-17 | NULL | 
| Buffy | Harold | dog | f | 1989-05-13 | NULL | 
+-------+--------+---------+------+------------+-------+ 
你也可以使用“{n}”“重復n次”操作符重寫先前的查詢: 
mysql> SELECT * FROM pet WHERE name REGEXP "^.{5}$"; 
+-------+--------+---------+------+------------+-------+ 
| name | owner | species | sex | birth | death | 
+-------+--------+---------+------+------------+-------+ 
| Claws | Gwen | cat | m | 1994-03-17 | NULL | 
| Buffy | Harold | dog | f | 1989-05-13 | NULL | 
+-------+--------+---------+------+------------+-------+
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 538在线精品| 蜜桃久久一区二区三区 | 免费中文视频 | 午夜视频在线 | 精品一区二区电影 | 一区二区三区日本在线观看 | av在线视| 中文字幕h | 欧美日韩影视 | 亚洲精品成人久久久 | 亚洲午夜一区二区三区 | 久久精品超碰 | 国产精品www | 国产91一区 | 一级免费在线视频 | 91久久精品一二三区 | 免费看真人a一级毛片 | 在线播放免费视频 | 国产欧美一区二区三区免费看 | 国产成人高清在线 | 日韩黄色av网站 | av在线免费观看播放 | 久久精片 | 伊久在线 | 毛片免费视频观看 | 国产在线午夜 | 久久国产亚洲视频 | 一区小视频 | 中国洗澡偷拍在线播放 | 一区二区三区四区视频在线观看 | 亚洲一区二区免费 | 国产精品视频yy9299一区 | 欧美日韩亚洲在线 | hdbbwsexvideo| av电影免费播放 | 免费a视频在线观看 | 草操影院 | 久草视频福利在线观看 | asian超清日本肉体pics | 一级大黄毛片 | hdbbwsexvideo|