正規表示式是用某種模式去匹配一類字串的一種方式,其查詢能力要遠在通配字元之上。
在mysql中使用regexp關鍵字來匹配查詢正規表示式。
demo
select * from tablename where columnname regexp 『***』;
column 後面用 regexp 加乙個正規表示式。。
正規表示式就不寫了
網上找了些demo
*模式字元 *
其含義為匹配以特定字元或者字串開頭的記錄。
例如:使用「^」表示式查詢tb1中major欄位以m開頭的記錄,則語句如下:
select major from tb1 where major regexp 『^m』;
模式字元 $
其含義為匹配以特定字元或者字串結尾的記錄。
例如:使用「$」表示式查詢tb1中major欄位以c結尾的記錄,則語句如下:
select major from tb1 where major regexp 『c$』;
模式字元 .
其含義為匹配字串中任意乙個字元,包括回車或者換行等。
例如:使用「.」表示式查詢tb1中number欄位包含4的記錄,則語句如下:
select number from tb1 where major regexp 『4.』;
(我舉得這種情況 . 可以省略)
模式字元 [字元集合]
其含義為匹配字元集合中任意乙個字元
例如:使用「[ ]」表示式查詢tb1中number欄位包含456的記錄,則語句如下:
select number from tb1 where major regexp 『[456]』;
模式字元 s1|s2|s3
其含義為匹配 s1、s2、s3中的任意乙個字串
例如:查詢tb1中major欄位包含a、p或者mic字元中任意乙個字元的記錄,則語句如下:
select * from tb1 where major regexp 『a|p|mic』;
模式字元 *
其含義為匹配多個該字元之前的字元,包括0和1個。
例如:使用「*」表示式查詢tb1中major欄位中m字元前出現c字元的記錄,則語句如下:
select major from tb1 where major regexp 『c*m』;
模式字元 +
其含義為匹配多個該字元之前的字元,包括 1個。
例如:使用「+」表示式查詢tb1中major欄位中m字元前至少出現乙個c字元的記錄,則語句如下:
select major from tb1 where major regexp 『c+m』;
模式字元 字串
其含義為匹配字元出現n次。
例如:使用「」表示式查詢tb1中major欄位中連續出現2次m的記錄,則語句如下:
select major from tb1 where major regexp 『m』;
模式字元 字串
其含義為匹配字元至少出現m次,做多n次。
例如:使用「」表示式查詢tb1中major欄位中連續出現2次m的記錄,最多出現3次m字元的記錄,則語句如下:
select major from tb1 where major regexp 『a』;
*最後就是把以前的
where columnname=』dddd』
的 等於 改為 regexp 後面加個正規表示式就行*
mysql正規表示式 MySQL正規表示式
正規表示式是為複雜搜尋指定模式的強大方式。正規表示式描述了一組字串。最簡單的正規表示式是不含任何特殊字元的正規表示式。例如,正規表示式hello匹配hello。非平凡的正規表示式採用了特殊的特定結構,從而使得它們能夠與1個以上的字串匹配。例如,正規表示式hello word匹配字串hello或字串w...
JavaScript中的正規表示式RegExp
正規表示式的兩種表示方法 字面量形式和建構函式形式 var reg cat g var reg new regexp cat g 可見無論哪一種方式都指明了正規表示式都由兩部分組成 模式和標誌。標誌分三種 g global i ignore m multiline global 匹配所有符合條件的字...
MySql 使用正規表示式
mysql 用where 子句對正規表示式提供了支援,允許你指定正規表示式,注意mysql僅支援多數正規表示式實現的乙個很小的子集。select prod name from products where prod name regexp 1000 mysql 中正規表示式匹配不區分大小寫,為區分大...