成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

淺談?wù)齽t表達(dá)式

lookSomeone / 408人閱讀

摘要:淺談?wù)齽t表達(dá)式正則表達(dá)式是對字符串進(jìn)行查找替換和提取等操作的工具。參數(shù)參數(shù)是一個字符串,制訂了正則表達(dá)式的模式和其他正則表達(dá)式參數(shù)是一個可選的字符串,包含屬性,分別用于指定全局匹配區(qū)分大小寫的匹配和多行匹配。

淺談?wù)齽t表達(dá)式

正則表達(dá)式是對字符串進(jìn)行查找替換和提取等操作的工具。有兩種寫法:

直接量語法

/pattern/attribues

RegExp對象語法

new RegExp(pattern,attributes);

舉個例子,比如我們要在一段字符串中查找所以數(shù)字,如下:

var str = "1 23 sda 34 adl34 7655 87 a 90 0";
        console.log(str.match(/d+/g))
        // ["1", "23", "34", "34", "7655", "87", "90", "0"]

只需要這么簡單的一段代碼就能在控制臺打印出我們需要的結(jié)果了。如果用一般的寫法,我們可能需要遍歷字符串,還要對字符串的內(nèi)容進(jìn)行判斷,就要寫一大段代碼,而利用正則表達(dá)式,我們可以很輕松的達(dá)成我們的需要。

再舉個例子,我們要對"35621237.61"這串?dāng)?shù)字添加千分位分隔符:

var a = "35621237.61";
        var reg=/(?=(d{3})+(.|$))/g;
        console.log(a.replace(reg,","))
        //35,621,237.61

就這樣就搞定了!

不過正則表達(dá)式有個缺點,就是符號太多,有時候看上去一臉懵逼,為了了解正則表達(dá)式,我們現(xiàn)在來看看正則表達(dá)式的各種屬性,以利用這個強大的工具。

參數(shù)

參數(shù) pattern 是一個字符串,制訂了正則表達(dá)式的模式和其他正則表達(dá)式

參數(shù) attributes 是一個可選的字符串,包含屬性"g"、"i"、"m",分別用于指定全局匹配、區(qū)分大小寫的匹配和多行匹配。

修飾符
i 執(zhí)行對大小寫不敏感的匹配
g 全局匹配,即查找所有匹配
m 執(zhí)行多行匹配
方括號

方括號用于查找某個范圍內(nèi)的字符

[abc]  查找方括號之間的任何字符
[^abc] 查找任何不在方括號之間的字符
[0-9]  查找任何從 0 至 9 的數(shù)字
[a-z]  查找任何從小寫 a 到小寫 z 的字符
[A-Z]  查找任何從大寫 A 到大寫 Z 的字符
[adgk] 查找給定集合內(nèi)的任何字符
元字符

即特殊符號

.    查找單個字符,除了換行和行結(jié)束符
w    查找單詞字符
W    查找非單詞字符
d    查找數(shù)字
D    查找非數(shù)字字符
s    查找空白字符
S    查找非空白字符
    匹配單詞邊
B    匹配非單詞邊界