首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫

MySQL 正則表達式 REGEXP 過濾資料完整指南

     編輯:MySQL 資料庫相關知識

一、REGEXP vs LIKE 核心差異

特性LIKEREGEXP
匹配範圍整個欄位值欄位值內部(子字串)
通配符% _完整正則語法
大小寫依配置3.23.4+ 預設不區分,需區分用 BINARY
-- REGEXP 在欄位內部匹配
SELECT * FROM wp_posts WHERE post_name REGEXP 'hello';
-- 僅匹配整個欄位時使用定位符 ^$
SELECT * FROM wp_posts WHERE post_name REGEXP '^hello$';

二、基礎字元匹配

  • .:匹配任意單一字元(如 '.og' 匹配 dog/hog/mog)
  • |:OR 邏輯('1000|2000')
  • [...]:字元集合([456] = [4|5|6])
  • [範圍]:[1-3]、[a-z]

三、特殊字元轉義

正則元字元(. [] | - 等)需用 \\ 轉義。如 \\. 匹配字面點號。

四、字元類別

五、量詞(多次匹配)

  • *:0 次或多次
  • +:1 次或多次
  • ?:0 次或 1 次(可選)
  • {n}:確切 n 次
  • {n,}:至少 n 次
  • {n,m}:n 到 m 次

六、定位符

  • ^:字串開頭
  • $:字串結尾
  • [[:<:]] / [[:>:]]:單字邊界

七、無資料庫環境測試正則

SELECT 'HELLO' REGEXP '^HE';  -- 返回 1(匹配)
SELECT 'HELLO' REGEXP '^hi';  -- 返回 0(不匹配)
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved