mysql中regexp_like()函數(shù)的例子解析

mysql中,regexp_like()函數(shù)用于確定字符串是否匹配正則表達式。

如果字符串與提供的正則表達式匹配,函數(shù)返回1;如果不匹配,返回0。

語法:

REGEXP_LIKE(expr,?pat[,?match_type])

其中expr是輸入字符串,pat是測試字符串的正則表達式。

可選的match_type參數(shù)允許您精煉正則表達式。

例如,您可以使用match_type來指定區(qū)分大小寫的匹配與否。

regexp_like()例子1 -基本用法

下面是一個基本的例子:

SELECT?REGEXP_LIKE('Cat',?'.*')?Result;

結果:

+--------+ |?Result?| +--------+ |??????1?| +--------+

在本例中,正則表達式指定任意序列中的任意字符,因此我們當然會得到一個匹配。函數(shù)返回1表示匹配。

regexp_like()例子2 -沒有匹配

下面是一個輸入字符串與正則表達式不匹配的例子:

SELECT?REGEXP_LIKE('Cat',?'b+')?Result;

結果:

+--------+ |?Result?| +--------+ |??????0?| +--------+

在本例中,正則表達式指定在任何序列中都應該有一個或多個b字符。我們的輸入字符串不包含這個字符,因此返回0。

regexp_like()例子3 -匹配字符串的開頭

下面是一個正則表達式指定字符串必須以某些字符開頭的例子:

SELECT?REGEXP_LIKE('Cat',?'^Ca')?Result;

結果:

+--------+ |?Result?| +--------+ |??????1?| +--------+

如果沒有匹配,會發(fā)生什么:

SELECT?REGEXP_LIKE('Cat',?'^Da')?Result;

結果:

+--------+ |?Result?| +--------+ |??????0?| +--------+

regexp_like()例子4 – match_type參數(shù)

您可以提供額外的參數(shù)來確定匹配類型。這允許您指定匹配是否區(qū)分大小寫,是否包含行終止符,等等。

下面是一個指定區(qū)分大小寫匹配和區(qū)分大小寫匹配的例子:

SELECT? ??REGEXP_LIKE('Cat',?'^ca',?'c')?'Case-Sensitive', ??REGEXP_LIKE('Cat',?'^ca',?'i')?'Case-Insensitive';

結果:

+----------------+------------------+ |?Case-Sensitive?|?Case-Insensitive?| +----------------+------------------+ |??????????????0?|????????????????1?| +----------------+------------------+

match_type參數(shù)可以包含以下字符:

c:區(qū)分大小寫的匹配。

i:不分大小寫匹配。

m:多重線模式。識別字符串中的行終止符。默認行為是僅在字符串表達式的開始和結束處匹配行終止符。

n:該.字符與行終止符匹配。默認設置是.匹配以在行尾停止。

u:僅限Unix的行結尾。只有換行符被.、^和$ 匹配運算符識別為行結束符。

相關推薦:《mysql教程

以上就是

? 版權聲明
THE END
喜歡就支持一下吧
點贊5 分享