正則表達(dá)式:
無論是在前端還是后臺正則表達(dá)式都是一個(gè)至關(guān)重要的知識點(diǎn),例如判斷一個(gè)手機(jī)號碼輸入是否正確,如果使用Java、C或者其他語言進(jìn)行字符串進(jìn)行判斷,也許寫幾十行代碼都不一定能解決,而且漏洞百出,而使用正則表達(dá)式,一行代碼則可輕易解決,下面是舉例說明正則表達(dá)式的用法:
1: \d 代表一個(gè)(阿拉伯?dāng)?shù)字) 任意數(shù)字
例如:判斷用戶輸入的是否為11位數(shù)字(當(dāng)然手機(jī)號碼是不能這么簡答的表達(dá),只是解釋一下\d的用法)
select 'ok'
from dual
where regexp_like('18812345678','\d\d\d\d\d\d\d\d\d\d\d')
2: . 代表一個(gè)(任意字母) 任意字母
這里需要注意的是,如果輸入的數(shù)字確實(shí)需要字母 . 的話,不能直接輸 . 要轉(zhuǎn)換一下格式,輸入 \. 即可,這個(gè)需要注意。
3: [[:number:]] 一個(gè)任意數(shù)字(可以使十六進(jìn)制)
這個(gè)用的并不多,如果現(xiàn)實(shí)十六進(jìn)制,可以使用如下方式即可
select 'ok'
from dual
where regexp_like('str','[0-9a-fA-F]')
4: [[:alpha:]] 一個(gè)任意大小寫字母
5: [ ] 匹配到方括號內(nèi)的其中一個(gè)字母
方括號中只能匹配到其中的任意一個(gè)字母,或者是7 或者是8或者是9,只能是1個(gè)
select 'ok'
from dual
where regexp_like('8','[379]')
例如下面的就是ASCII碼中,數(shù)字3到ASCII碼 小寫的 a 其中的任意一個(gè)字符的匹配
select 'ok'
from dual
where regexp_like('9','[3-a]')
當(dāng)然如果是12345678這樣的連續(xù)的數(shù)字可以這么寫
select 'ok'
from dual
where regexp_like('str','[1-8]')
如果是要匹配 12345678 中的其中一個(gè),或者是字母 a也行,就可以這么寫,a可以寫到前邊,也可以寫到后面,這并無所謂,因?yàn)橹黄ヅ湟粋€(gè)而已
select 'ok'
from dual
where regexp_like('str','[a1-8]')
6: () 單詞匹配
單詞匹配,一般用豎線隔開,例如:小明喜歡吃蘋果或者香蕉或者櫻桃,此時(shí)就應(yīng)該是用單詞的匹配,在圓括號中任選一個(gè)。
select 'ok'
from dual
where regexp_like('小明喜歡吃蘋果.','小明喜歡吃(蘋果|香蕉|櫻桃)\.')
7:量詞:來修飾左側(cè)的元素的數(shù)量,三個(gè)量詞
7.1: * 0到任意多個(gè)
7.2: + 1到任意多個(gè)
7.3: ? 0或者1個(gè)
{N},代表左側(cè)有N個(gè)數(shù)據(jù),比如上面的手機(jī)號碼驗(yàn)證,\d 需要輸入9個(gè),這里就可以使用{N}來簡化一下,\d是數(shù)字,然后\d{10},代表這里有10個(gè)數(shù)字
select 'ok'
from dual
where regexp_like('str','1\d{10}')
如果是:{2,10} 代表左側(cè)的東西 最少有2個(gè),最多有10個(gè)
9:引導(dǎo)符: ^ :在正則表達(dá)式最前方使用 ^ ,代表只能按照表達(dá)式的格式去匹配
10:結(jié)束符: $ :在正則表達(dá)式最后面使用 ¥ ,代表只能按照表達(dá)式的格式去匹配
出現(xiàn)前導(dǎo)符的原因:因?yàn)檎齽t表達(dá)式只匹配"表達(dá)式匹配條件的內(nèi)容",之外的不匹配
11:\n 換行
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
您可能感興趣的文章:- Oracle通過正則表達(dá)式分割字符串 REGEXP_SUBSTR的代碼詳解
- Oracle中正則表達(dá)式的使用實(shí)例教程
- Oracle 正則表達(dá)式實(shí)例詳解
- ORACLE數(shù)據(jù)庫中怎么求除數(shù)字、字母之外的非中文字符的正則表達(dá)式
- oracle正則表達(dá)式regexp_like的用法詳解
- Oracle正則表達(dá)式使用介紹
- Oracle 10G:PL/SQL正規(guī)表達(dá)式(正則表達(dá)式)手冊
- ORACLE 正則解決初使化數(shù)據(jù)格式不一致