牛客刷題day04——split()函數(shù)、正則表達(dá)式、replace()函數(shù)和replaceAll()函數(shù)
一、JS中的split()函數(shù)
split()函數(shù)不改變原始字符串。
string.split(separator,limit)
separator:可選。字符串或正則表達(dá)式,從該參數(shù)指定的地方分割。
limit:可選。該參數(shù)可指定返回的數(shù)組的最大長度。如果設(shè)置了該參數(shù),返回的子串不會多于這個參數(shù)指定的數(shù)組。如果沒有設(shè)置該參數(shù),整個字符串都會被分割,不考慮它的長度。
返回值:一個字符串?dāng)?shù)組。該數(shù)組是通過在 separator 指定的邊界處將字符串 string Object 分割成子串創(chuàng)建的。返回的數(shù)組中的子串不包括 separator 自身。
二、正則表達(dá)式
/正則表達(dá)式主體/修飾符(可選)
常用于字符串的?search()函數(shù) 和 replace()函數(shù)中。
修飾符:
i:執(zhí)行對大小寫不敏感的匹配。
g:執(zhí)行全局匹配(查找所有匹配而非在找到第一個匹配后停止)。
m:執(zhí)行多行匹配。
正則表達(dá)式模式:
[abc]:查找方括號之間的任何字符。
[0-9]:查找任何從 0 至 9 的數(shù)字。
(x|y):查找任何以 | 分隔的選項。
元字符:
\d:查找數(shù)字。
\s:查找空白字符。
\b:匹配單詞邊界。
\uxxxx:查找以十六進(jìn)制數(shù) xxxx 規(guī)定的 Unicode 字符。
量詞:
n+:匹配任何包含至少一個?n?的字符串。
n*:匹配任何包含零個或多個?n?的字符串。
n?:匹配任何包含零個或一個?n?的字符串。
使用 RegExp 對象:
test() 方法用于檢測一個字符串是否匹配某個模式,如果字符串中含有匹配的文本,則返回 true,否則返回 false。
exec() 方法返回一個數(shù)組,其中存放匹配的結(jié)果。如果未找到匹配,則返回值為 null。
校驗字符串,是否全為大寫、小寫、字母、數(shù)字:
三、replace()函數(shù)和replaceAll()函數(shù)
replace()函數(shù)
用于在字符串中用一些字符替換另一些字符,或替換一個與正則表達(dá)式匹配的子串。
只替換一次。
該方法不會改變原始字符串。
replaceAll()函數(shù)
用于在字符串中用一些字符替換另一些字符,或替換一個與正則表達(dá)式匹配的子串,該函數(shù)會替換所有匹配到的子字符串。
該方法不會改變原始字符串。