成人午夜视频全免费观看高清-秋霞福利视频一区二区三区-国产精品久久久久电影小说-亚洲不卡区三一区三区一区

mysql中正則表達(dá)式搜索功能的示例分析-創(chuàng)新互聯(lián)

這篇文章主要介紹mysql中正則表達(dá)式搜索功能的示例分析,文中介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們一定要看完!

創(chuàng)新互聯(lián)公司長(zhǎng)期為千余家客戶(hù)提供的網(wǎng)站建設(shè)服務(wù),團(tuán)隊(duì)從業(yè)經(jīng)驗(yàn)10年,關(guān)注不同地域、不同群體,并針對(duì)不同對(duì)象提供差異化的產(chǎn)品和服務(wù);打造開(kāi)放共贏平臺(tái),與合作伙伴共同營(yíng)造健康的互聯(lián)網(wǎng)生態(tài)環(huán)境。為察雅企業(yè)提供專(zhuān)業(yè)的成都做網(wǎng)站、成都網(wǎng)站制作,察雅網(wǎng)站改版等技術(shù)服務(wù)。擁有十多年豐富建站經(jīng)驗(yàn)和眾多成功案例,為您定制開(kāi)發(fā)。

具體如下:

我們知道正則表達(dá)式是描述搜索模式的特殊字符串。 它是一個(gè)強(qiáng)大的工具,為我們提供一種簡(jiǎn)潔靈活的方法來(lái)識(shí)別基于模式的文本字符,例如字符,單詞等。例如,我們可以使用正則表達(dá)式來(lái)搜索電子郵件,IP地址,電話(huà)號(hào)碼,社會(huì)安全號(hào)碼或具有特定模式的任何內(nèi)容。正則表達(dá)式可以由正則表達(dá)式處理器解釋的自己的語(yǔ)法,正則表達(dá)式廣泛應(yīng)用于從編程語(yǔ)言到數(shù)據(jù)庫(kù)(包括MySQL)大部分平臺(tái)。使用正則表達(dá)式的優(yōu)點(diǎn)是,不限于在like運(yùn)算符中基于具有百分號(hào)(%)和下劃線(_)的固定模式搜索字符串。 使用正則表達(dá)式,有更多的元字符來(lái)構(gòu)造靈活的模式。

了解了這些我們是不是想要來(lái)試試水呢???廢話(huà)不多說(shuō),MySQL允許使用REGEXP運(yùn)算符在SQL語(yǔ)句中匹配模式,所以,我們來(lái)看下,正則再where子句中的語(yǔ)法格式:

SELECT 
 column_list
FROM
 table_name
WHERE
 string_column REGEXP pattern;

這條sql中執(zhí)行string_column與模式pattern匹配,如果string_column中的值與模式pattern匹配,則WHERE子句中的表達(dá)式將返回1,否則返回0。如果string_column或pattern為NULL,則結(jié)果為NULL。除了REGEXP運(yùn)算符之外,可以使用RLIKE運(yùn)算符,這是REGEXP運(yùn)算符的同義詞。其中,REGEXP運(yùn)算符的否定形式是NOT REGEXP。

完事我們來(lái)看個(gè)實(shí)例哈,假設(shè)想找出名字以字母A,B或C開(kāi)頭的產(chǎn)品??梢允褂胹elect語(yǔ)句中的正則表達(dá)式如下:

SELECT 
 productname
FROM
 products
WHERE
 productname REGEXP '^(A|B|C)'
ORDER BY productname;

執(zhí)行上面查詢(xún)語(yǔ)句,得到以下結(jié)果:

+--------------------------------+
| productname     |
+--------------------------------+
| America West Airlines B757-200 |
| American Airlines: B767-300 |
| American Airlines: MD-11S  |
| ATA: B757-300     |
| Boeing X-32A JSF    |
| Collectable Wooden Train  |
| Corsair F4U ( Bird Cage)  |
+--------------------------------+
7 rows in set

該模式允許查詢(xún)名稱(chēng)以A,B或C開(kāi)頭的產(chǎn)品,其中字符^表示從字符串的開(kāi)頭匹配,完事字符|如果無(wú)法匹配,則搜索替代方法。下表說(shuō)明了正則表達(dá)式中一些常用的元字符和構(gòu)造:

元字符行為
^匹配搜索字符串開(kāi)頭處的位置
$匹配搜索字符串末尾的位置
.匹配任何單個(gè)字符
[…]匹配方括號(hào)內(nèi)的任何字符
[^…]匹配方括號(hào)內(nèi)未指定的任何字符
mysql中正則表達(dá)式搜索功能的示例分析匹配p1或p2模式
*匹配前面的字符零次或多次
+匹配前一個(gè)字符一次或多次
{n}匹配前幾個(gè)字符的n個(gè)實(shí)例
{m,n}從m到n個(gè)前一個(gè)字符的實(shí)例匹配

我們?cè)賮?lái)查找名稱(chēng)以a開(kāi)頭的產(chǎn)品,我們?cè)诿Q(chēng)開(kāi)頭使用“^”進(jìn)行匹配,如下查詢(xún)語(yǔ)句:

SELECT 
 productname
FROM
 products
WHERE
 productname REGEXP '^a';

執(zhí)行上面查詢(xún)語(yǔ)句,得到以下結(jié)果:

+--------------------------------+
| productname     |
+--------------------------------+
| American Airlines: B767-300 |
| America West Airlines B757-200 |
| ATA: B757-300     |
| American Airlines: MD-11S  |
+--------------------------------+
4 rows in set

如果要使REGEXP運(yùn)算符以區(qū)分大小寫(xiě)的方式比較字符串,可以使用BINARY運(yùn)算符將字符串轉(zhuǎn)換為二進(jìn)制字符串。因?yàn)镸ySQL比較二進(jìn)制字節(jié)逐字節(jié)而不是逐字符。 這允許字符串比較區(qū)分大小寫(xiě)。例如,以下語(yǔ)句只匹配開(kāi)頭為大寫(xiě)“C”的產(chǎn)品名稱(chēng):

SELECT 
 productname
FROM
 products
WHERE
 productname REGEXP BINARY '^C';

執(zhí)行上面查詢(xún)語(yǔ)句,得到以下結(jié)果:

+--------------------------+
| productname    |
+--------------------------+
| Collectable Wooden Train |
| Corsair F4U ( Bird Cage) |
+--------------------------+
2 rows in set

要找到以f結(jié)尾的產(chǎn)品,我們可以使用'$f‘來(lái)匹配字符串的末尾:

SELECT 
 productname
FROM
 products
WHERE
 productname REGEXP 'f$';

執(zhí)行上面查詢(xún)語(yǔ)句,得到以下結(jié)果:

+------------------+
| productname  |
+------------------+
| Boeing X-32A JSF |
+------------------+
1 row in set

要查找其名稱(chēng)包含“ford”的產(chǎn)品,就要使用以下查詢(xún):

SELECT 
 productname
FROM
 products
WHERE
 productname REGEXP 'ford';

執(zhí)行上面查詢(xún)語(yǔ)句,得到以下結(jié)果:

+----------------------------------+
| productname      |
+----------------------------------+
| 1968 Ford Mustang    |
| 1969 Ford Falcon     |
| 1940 Ford Pickup Truck   |
| 1911 Ford Town Car    |
| 1932 Model A Ford J-Coupe  |
| 1926 Ford Fire Engine   |
| 1913 Ford Model T Speedster  |
| 1934 Ford V8 Coupe    |
| 1903 Ford Model A    |
| 1976 Ford Gran Torino   |
| 1940s Ford truck     |
| 1957 Ford Thunderbird   |
| 1912 Ford Model T Delivery Wagon |
| 1940 Ford Delivery Sedan   |
| 1928 Ford Phaeton Deluxe   |
+----------------------------------+
15 rows in set

要查找名稱(chēng)只包含10個(gè)字符的產(chǎn)品,可以使用'^‘和'$‘來(lái)匹配產(chǎn)品名稱(chēng)的開(kāi)頭和結(jié)尾,并重復(fù){10}次任何字符.,作為以下查詢(xún):

SELECT 
 productname
FROM
 products
WHERE
 productname REGEXP '^.{10}$';

執(zhí)行上面查詢(xún)語(yǔ)句,得到以下結(jié)果:

+-------------+
| productname |
+-------------+
| HMS Bounty |
| Pont Yacht |
+-------------+
2 rows in set

其實(shí)吧,這個(gè)查詢(xún)方式是固定的,可變的是你寫(xiě)的正則,所以具體咋用,就要看各位小伙伴的能力了哦。

以上是“mysql中正則表達(dá)式搜索功能的示例分析”這篇文章的所有內(nèi)容,感謝各位的閱讀!希望分享的內(nèi)容對(duì)大家有幫助,更多相關(guān)知識(shí),歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道!

文章名稱(chēng):mysql中正則表達(dá)式搜索功能的示例分析-創(chuàng)新互聯(lián)
路徑分享:http://jinyejixie.com/article44/cshhee.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供靜態(tài)網(wǎng)站定制開(kāi)發(fā)、微信公眾號(hào)、全網(wǎng)營(yíng)銷(xiāo)推廣、面包屑導(dǎo)航、移動(dòng)網(wǎng)站建設(shè)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶(hù)投稿、用戶(hù)轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話(huà):028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

成都app開(kāi)發(fā)公司
云龙县| 彭山县| 达州市| 邮箱| 辰溪县| 视频| 绥芬河市| 巧家县| 万全县| 永和县| 苏尼特右旗| 望江县| 台州市| 灵璧县| 临汾市| 保定市| 新绛县| 南靖县| 白山市| 刚察县| 咸宁市| 天台县| 南昌县| 绥棱县| 项城市| 江口县| 汾阳市| 新安县| 田阳县| 吴忠市| 土默特左旗| 清新县| 天峨县| 乐业县| 许昌县| 荆州市| 淄博市| 郴州市| 莱西市| 靖安县| 铁力市|