基本字元匹配
select prod_name
from products
where prod_name regexp '.000'
order by prod_name;
分析
這裡使用了正規表示式 .000,是正規表示式語言中乙個特殊的字元。它表示匹配任意乙個字元,因此,1000和2000都匹配且返回。
注意:like和regexp之間有乙個重要的區別
like匹配整個列
regexp匹配字元
區分大小寫:
select prod_name
from products
where prod_name regexp binary 'jetpack.000'
order by prod_name;
進行or匹配
select prod_name
from products
where prod_name regexp '1000 | 2000'
order by prod_name;
分析
兩個或者兩個以上的用 『 1000 | 2000 | 3000 | 4000』
匹配幾個字元之一
select prod_name
from products
where prod_name regexp '[123] ton'
order by prod_name;
分析
[123] ton 的意思是匹配1或2或3,因此,1 ton和2 ton都匹配且返回
匹配範圍
select prod_name
from products
where prod_name regexp '[1-5] ton'
order by prod_name;
分析
匹配1-5
匹配特殊字元
select prod_name
from products
where prod_name regexp '\\.'
order by prod_name;
分析
\. 匹配,檢索出一行,轉義匹配 .
\f 換頁
\n 換行
\r 回車
\t 製表
\v 縱向製表
匹配\ \
mysql要用\:mysql自己解釋乙個,正規表示式解釋乙個
匹配字元類
匹配多個例項
分析
\(匹配)
[0-9]匹配任意數字
s後?使s可選
\ )匹配)
匹配連在一起的4位數字:
select prod_name
from products
where prod_name regexp '[[:digit:]]'
order by prod_name;
select prod_name
from products
where prod_name regexp '[0-9][0-9][0-9][0-9]'
order by prod_name;
定位符
select prod_name
from products
where prod_name regexp '\^ [0-9\\.]'
order by prod_name;
分析
^的雙重用途:在集合中用來否定該集合,用來指串的開始處
mysql之用正規表示式進行搜尋
比如 000 能匹配 1000 和 2000 select from h info where l id regexp 0 select from h info where l id regexp 0 3.表示檢索l id個位是0和十位是3的記錄。select from h info where l...
sql正規表示式 SQL中的正規表示式
sql正規表示式 sql中的正規表示式 sql的查詢語句中,有時會需要引進正規表示式為其複雜搜尋指定模式。下面給出一些 regexp 在mysql 語句中應用 非全部 1 匹配字串的開始部分。mysql select fo nfo regexp fo 0mysql select fofo regex...
SQL 正規表示式
由mysql提供的模式匹配的其他型別是使用擴充套件正規表示式。當你對這類模式進行匹配測試時,使用regexp和not regexp操作符 或rlike和not rlike,它們是同義詞 擴充套件正規表示式的一些字元是 匹配任何單個的字元。乙個字元類 匹配在方括號內的任何字元。例如,abc 匹配 a ...