mysql中若何應用正則表達式查詢。本站提示廣大學習愛好者:(mysql中若何應用正則表達式查詢)文章只能為提供參考,不一定能成為您想要的結果。以下是mysql中若何應用正則表達式查詢正文
根本情勢
屬性名 regexp ‘婚配方法'
正則表達式的形式字符
^ 婚配字符開端的部門
eg1: 從info表name字段中查詢以L開首的記載
select * from info where name regexp '^L';
eg2: 從info表name字段中查詢以aaa開首的記載
select * from info where name regexp '^aaa';
$ 婚配字符停止的部門
eg1: 從info表name字段中查詢以c開頭的記載
select * from info where name regexp 'c$';
eg2: 從info表name字段中查詢以aaa開頭的記載
select * from info where name regexp 'aaa$';
. 婚配字符串中的隨意率性一個字符,包含回車和換行
eg1: 從info表name字段中查詢以L開首y開頭中央有兩個隨意率性字符的記載
select * from info where name regexp '^L..y$';
[字符聚集]婚配字符聚集中的隨意率性字符
eg1: 從info表name字段中查詢包括c、e、o三個字母中隨意率性一個的記載
select * from info where name regexp '[ceo]';
eg2: 從info表name字段中查詢包括數字的記載
select * from info where name regexp '[0-9]';
eg3: 從info表name字段中查詢包括數字或a、b、c三個字母中隨意率性一個的記載
select * from info where name regexp '[0-9a-c]';
[^字符聚集]婚配除字符聚集外的隨意率性字符
eg1: 從info表name字段中查詢包括a-w字母和數字之外字符的記載
select * from info where name regexp '[^a-w0-9]';
s1|s2|s3 婚配s1s2s3中的隨意率性一個
eg1: 從info表name字段中查詢包括'ic'的記載
select * from info where name regexp 'ic';
eg2: 從info表name字段中查詢包括ic、uc、ab三個字符串中隨意率性一個的記載
select * from info where name regexp 'ic|uc|ab';
* 代表多個該字符前的字符,包含0個或1個
eg1: 從info表name字段中查詢c之前湧現過a的記載
select * from info where name regexp 'a*c';
+ 代表多個該字符前的字符,包含1個
eg1: 從info表name字段中查詢c之前湧現過a的記載
select * from info where name regexp 'a+c';(留意比擬成果!)
字符串{N} 字符串湧現N次
eg1: 從info表name字段中查詢湧現過a3次的記載
select * from info where name regexp 'a{3}';
字符串{M,N}字符串起碼湧現M次,最多湧現N次
eg1: 從info表name字段中查詢ab湧現起碼1次最多3次的記載
select * from info where name regexp 'ab{1,3}';
MYSQL中自帶通配符(LIKE症結詞)
%可以表現隨意率性長度的字符(包含0)
-可以表現單個字符