MySql萬用字元過濾,正規表示式過濾

2021-08-02 16:54:24 字數 2501 閱讀 9715

百分號萬用字元:在搜尋串中,%表示任意字元出現的任何次數。

1:找出所有以jet開頭的產品

select prod_name,prod_price from products where prod_name like'jet%'。

2:匹配任何位置包含文字anvil的值 

select prod_name,prod_price from products where prod_name like'%anvil%'

注意:%可以匹配0個字元,但不能匹配null值.

下劃線萬用字元:下劃線只匹配單個字元而不是多個字元。

1:select prod_name,prod_price from products where prod_name like

'_ ton anvil%'

萬用字元使用技巧:1、不要過度使用萬用字元,如果使用其他操作符能達到相同的目的,應該使用其他操作符;

2、在確實使用萬用字元時,最好不要把它們置於搜尋模式的開始處.那樣是最慢的.

正規表示式:1:檢索列prod_name中包含文字1000的所有行

select prod_name,prod_price from products where prod_nameregexp '1000'

order by prod_name;

2:檢索列prod_name中包含文字000的所有行

prod_name,prod_price from products where prod_nameregexp '.000'order by prod_name;

上面正規表示式中的「.」表示匹配任意乙個字元。

3:檢索列prod_name中包含文字1000或2000的所有行     

select prod_name,prod_price from products where prod_nameregexp '1000|2000'order by prod_name;

4:匹配幾個字元之一

select prod_name,prod_price from products where prod_nameregexp '[1-3] ton' order by prod_name;

[1-3]意思為「1|2|3」  如圖

匹配特殊字元

select prod_name,prod_price from products where prod_nameregexp '\\.'order by prod_name;

上面為了匹配特殊字元,需要使用\\為前導(轉義)  為了匹配「\」,需要使用「\\\」

5:   匹配字元類

select prod_name,prod_price from products where prod_nameregexp '[:upper:]' order by prod_name;

regexp '[:upper:]' 表示匹配任意大寫字母。還有其它字元類如下:

6:匹配多個例項  

重複元字元

解釋一下:第乙個\\轉義「(」   用 [0-9]表示匹配任意數字,sticks?表示匹配stick 或者sticks ,"?"使得sticks後的s變為可選值. ?表示它前面的字元出現0次或者1次。                                                最後乙個\\轉義")"

輸出為:

7:select prod_name,prod_price from products where prod_name

regexp '[[:digit:]]'

order by prod_name;

regexp '[[:digit:]]'

匹配連在一起的任意4位數字.

8:定位符

^有兩種用法,在集合中(用「[」和「]」)定義,用它來否定該集合,否則,用來指串的開始處.

select prod_name,prod_price from products where prod_nameregexp '^[0-9\\.]'order by prod_name;

找出以任意數字為串中第乙個字元時的匹配;

正規表示式與like的區別:like匹配整個串,而regexp匹配子串.利用定位符,用"^"開始,"$"結尾,可以使regexp與like的作用一樣.

萬用字元 正規表示式

萬用字元 萬用字元是系統級別的 而正規表示式需要相關 工具和語 言的 支援 egrep,awk,vi,perl。當您鍵入 ls txt 命令並按 enter 後,尋找哪些檔案同 txt 模式相匹配的任務不是由 ls 命令,而是由 shell 自己完成。這需要對命令列是如何被 shell 解析的作進一...

萬用字元 正規表示式

萬用字元 萬用字元是系統級別的 而正規表示式需要相關 工具和語 言的 支援 egrep,awk,vi,perl.當您鍵入ls.txt命令並按enter後,尋找哪些檔案同.txt模式相匹配的任務不是由ls命令,而是由shell自己完成.這需要對命令列是如何被shell解析的作進一步解釋.當您鍵入 ls...

正規表示式,萬用字元

shell中正規表示式和萬用字元 linux上實際操作是什麼情況,就是什麼情況,理論只是猜測,試驗結果大於一切 萬用字元一般是用於匹配符合條件的檔名 例如 ls fei hai 而正規表示式則一般是用於在檔案中匹配符合條件的字串。萬用字元是完全匹配,而正規表示式則是包含匹配。例如命令find nam...