柚子快報(bào)激活碼778899分享:jS-正則表達(dá)式(六)
? 介紹
什么是正則表達(dá)式
正則表達(dá)式(Regular Expression)是用于匹配字符串中字符組合的模式。在 JavaScript中,正則表達(dá)式也是對(duì)象
使用場(chǎng)景:
1.例如驗(yàn)證表單:用戶(hù)名表單只能輸入英文字母、數(shù)字或者下劃線(xiàn), 昵稱(chēng)輸入框中可以輸入中文(匹配)
比如用戶(hù)名: /^[a-z0-9_-]{3,16}$/
2.過(guò)濾掉頁(yè)面內(nèi)容中的一些敏感詞(替換),或從字符串中獲取我們想要的特定部分(提取)等
總結(jié):
1.正則表達(dá)式是什么?
是用于匹配字符串中字符組合的模式
2.正則表達(dá)式有什么作用?
表單驗(yàn)證(匹配)過(guò)濾敏感詞(替換)字符串中提取我們想要的部分(提?。?
? 語(yǔ)法
1. 定義正則表達(dá)式語(yǔ)法/表達(dá)式/:
2.判斷是否有符合規(guī)則的字符串test():
test() 方法 用來(lái)查看正則表達(dá)式與指定的字符串是否匹配?
如果正則表達(dá)式與指定的字符串匹配 ,返回true,否則false?
3.檢索exec()(查找)符合規(guī)則的字符串:
exec() 方法 在一個(gè)指定字符串中執(zhí)行一個(gè)搜索匹配
如果匹配成功,exec() 方法返回一個(gè)數(shù)組,否則返回null?
總結(jié):
正則表達(dá)式使用分為幾步?
定義正則表達(dá)式檢測(cè)查找是否匹配
正則表達(dá)式檢測(cè)查找 test方法和exec方法有什么區(qū)別?
test方法 用于判斷是否有符合規(guī)則的字符串,返回的是布爾值 找到返回true,否則falseexec方法用于檢索(查找)符合規(guī)則的字符串,找到返回?cái)?shù)組,否則為 null
? 元字符(重點(diǎn))
普通字符:
大多數(shù)的字符僅能夠描述它們本身,這些字符稱(chēng)作普通字符,例如所有的字母和數(shù)字。 也就是說(shuō)普通字符只能夠匹配字符串中與它們相同的字符。
元字符(特殊字符):
是一些具有特殊含義的字符,可以極大提高了靈活性和強(qiáng)大的匹配功能。
?比如,規(guī)定用戶(hù)只能輸入英文26個(gè)英文字母,普通字符的話(huà) abcdefghijklm…..但是換成元字符寫(xiě)法: [a-z]
參考文檔:
MDN:https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Guide/Regular_Expressions
正則測(cè)試工具:? ?http://tool.oschina.net/regex
邊界符
?
量詞 (表示重復(fù)次數(shù))
注意: 逗號(hào)左右兩側(cè)千萬(wàn)不要出現(xiàn)空格?
字符類(lèi) (比如 \d 表示 0~9)
?
(2) . 匹配除換行符之外的任何單個(gè)字符?
?
注意:
這里需要注意的是,在[]里面的字符類(lèi),那個(gè)放斜杠可以省略,如果不在中括號(hào)里面。則需要加上去
? 修飾符(ig)
修飾符約束正則執(zhí)行的某些細(xì)節(jié)行為,如是否區(qū)分大小寫(xiě)、是否支持多行匹配等語(yǔ)法:
i 是單詞 ignore 的縮寫(xiě),正則匹配時(shí)字母不區(qū)分大小寫(xiě)?g 是單詞 global 的縮寫(xiě),匹配所有滿(mǎn)足正則表達(dá)式的結(jié)果
?
最后,Js中的正則表達(dá)式的元字符和修飾符和其他語(yǔ)言(Java)中的正則表達(dá)式用法都是一樣的
柚子快報(bào)激活碼778899分享:jS-正則表達(dá)式(六)
精彩內(nèi)容
本文內(nèi)容根據(jù)網(wǎng)絡(luò)資料整理,出于傳遞更多信息之目的,不代表金鑰匙跨境贊同其觀點(diǎn)和立場(chǎng)。
轉(zhuǎn)載請(qǐng)注明,如有侵權(quán),聯(lián)系刪除。