柚子快報激活碼778899分享:前端的正則表達式
柚子快報激活碼778899分享:前端的正則表達式
今天處理校驗問題發(fā)現(xiàn)正在表達式還不會,今天記錄學習一下
正則表達式的作用?
我接觸的場景:校驗(判斷字符串是否符合你所指定的規(guī)則)
正則表達式的方法?
test()和match()
test()判斷字符串是否符合你所指定的規(guī)則?
match()將字符串中符合你制定規(guī)則內(nèi)容提取出來
test()注重判斷,match()注重內(nèi)容,校驗是我們都是test()進行判斷即可
正則表達式的書寫?
正則表達式類似字符串,只是我們跟他賦予了規(guī)則而已,已//表示
// 判斷 hello中是否有e
let a = 'hello'
let b = /e/
b.test(a)
?此時的b就以變?yōu)檎齽t表達式,判斷是否有e?
* + {}存在個數(shù)
為了處理負責的業(yè)務場景,正則表達式也提供的不同的符號來表示判斷條件
*+{}:表示存在個數(shù)的
不同點:*表示存在0個及其以上
? ? ? ? ? ? ? +表示存在1個及其以上
? ? ? ? ? ? ? {}可以根據(jù)參數(shù)表示存在個數(shù),{1,2}表示至少存在1個而且小于3個
let a = 'hello'
let b = /e{2,3}/
let c = /e+/
let d = /e*/
b.test(a) // hello存在一個e不符合返回false
c.test(a) // true
d.test(a) // true
| [] - ^ 范圍選擇
| [] -?:范圍選取
不同點:[]寫在//中,-寫在[]中?,
??????????????|寫在//中,可以寫字符串(看例子)? ? ??
^ :配合[]反向取值,寫在[]中后面還有個不寫在[]中的
let a = 'hello'
let b = /[abc]/ // 表示是否存在a、b、c其中一個字符
let c = /[a-f]/ // 表示是否存在a-f中其中一個字符
let d = /[^abc]/ // 表示是否不存在a、b、c字符
let e = /ab|bc|he/ //表示是否存在ab、bc、he其中一個
b.test(a) // false
c.test(a) // true
d.test(a) // true
e.test(a) // true
^$ 指定開頭結尾
這個比較好理解直接上例子
let a = 'hello'
let b = '/^h/' // 判斷是否h開頭
let c = '/h$/' // 判斷是否h結尾
let d = '/^hello$/' //判斷是否hello開頭,并且hello結尾
b.test(a) // true
c.test(a) // false
d.test(a) // true
?.通配符
表示任意一個
let a = 'hello'
let b = /h./ //表示h+任意一個
let c = /a./ //表示a+任意一個
b.test(a) //true
c.test(a) //false
\S 搜索空格
let a = 'hello word'
let b = /\S/ // 是否存在空格
b.test(a) // true
\轉義符
正則表達式中定義了很多特殊符合,如果我們想讓這些特殊符號變?yōu)槠胀ǚ柧托枰猏
let a = 'hello.'
let b = /\./ // 判斷是否存在.
b.test(a) // true
未完待續(xù)(大概率不寫了自己這些就夠看了,還有什么經(jīng)常使用的正則希望大家評論)
柚子快報激活碼778899分享:前端的正則表達式
參考文章
本文內(nèi)容根據(jù)網(wǎng)絡資料整理,出于傳遞更多信息之目的,不代表金鑰匙跨境贊同其觀點和立場。
轉載請注明,如有侵權,聯(lián)系刪除。