JavaScript學(xué)習(xí)筆記整理_用于模式匹配的String方法
用于模式匹配的String方法:
String支持4種使用正則表達(dá)式的方法:
seach()用于檢索,參數(shù)是一個(gè)正則表達(dá)式,返回第一個(gè)與之匹配的子串的位置,找不到則返回-1,如果參數(shù)不是正則表達(dá)式,則首先會(huì)通過(guò)RexExp構(gòu)造函數(shù)將它轉(zhuǎn)換成正則表達(dá)式,seach()方法不支持全局搜索,它忽略修飾符g;
replace()用于檢索與替換操作,第一個(gè)參數(shù)是一個(gè)正則表達(dá)式,第二個(gè)參數(shù)是要進(jìn)行替換的字符串。它對(duì)調(diào)用該方法的字符串檢索,按照模式匹配子串替換成第二個(gè)參數(shù),若包含修飾符g則全文匹配。若第一個(gè)參數(shù)不是正則表達(dá)式而是字符串,則直接搜索替換掉這個(gè)字符串;
text.replace(/javascript/gi,'JavaScript')表示在text全文中搜索不區(qū)分大小寫(xiě)的javascript替換成JavaScript
如果用來(lái)替換的字符串中出現(xiàn)($加數(shù)字),則replace()方法將用與$加數(shù)字指代的子表達(dá)式匹配的文本來(lái)替換,如:
var quote = /"([^"]*)"/g
text.replace(quote,'“$1”'); 全文搜索與/"([^"]*)"/匹配的字符串,替換為“$1”(表示只改變兩邊的雙引號(hào)為中文半角,而存儲(chǔ)在$1中的內(nèi)容不變)$1存儲(chǔ)了指代與第一個(gè)左圓括號(hào)內(nèi)的子表達(dá)式匹配的字符串;
match() 唯一的參數(shù)是一個(gè)正則表達(dá)式,返回的是一個(gè)由匹配結(jié)果組成的數(shù)組,如果參數(shù)不是正則表達(dá)式,則首先會(huì)通過(guò)RexExp構(gòu)造函數(shù)將它轉(zhuǎn)換成正則表達(dá)式;
(二)如果這個(gè)正則表達(dá)式帶修飾符g,match()返回的數(shù)組元素是匹配全文得到的所有字符串;
(二)如果這個(gè)正則表達(dá)式不帶修飾符g,match()只檢索第一個(gè)匹配,但他也返回一個(gè)數(shù)組(數(shù)組的第一個(gè)元素是匹配的整個(gè)字符串,接下來(lái)的元素是表達(dá)式中所有用圓括號(hào)括起來(lái)的子表達(dá)式匹配到的字符串,每個(gè)元素對(duì)應(yīng)一個(gè)括號(hào))
如:
var url = /(\w*):\/\/([\w.]+)\/(\S*)/; var text = 'http://www.w3school.com.cn/jsref'; var result = text.match(url); if(result != null) { var fullurl = result[0]; var protocol =result[1]; var host = result[2]; var path = result[3]; }
split()將字符串按參數(shù)指定的分隔符拆分為多個(gè)子串組成的數(shù)組,如:
'123,345,789'.split(','); //返回['123','345','789']
'1, 2 , 3, 4 ,5 , 6'.split(/\s*,\s*/); //返回['1','2','3','4','5','6']
以上就是小編為大家?guī)?lái)的JavaScript學(xué)習(xí)筆記整理_用于模式匹配的String方法的全部?jī)?nèi)容了,希望對(duì)大家有所幫助,多多支持腳本之家~
相關(guān)文章
Javascript學(xué)習(xí)筆記8 用JSON做原型
在Javascript學(xué)習(xí)筆記5 類(lèi)和對(duì)象中,我簡(jiǎn)單地提到了利用JSON去構(gòu)造一個(gè)對(duì)象。2010-01-01如何用javascript計(jì)算文本框還能輸入多少個(gè)字符
這篇文章主要介紹了如何使用javascript計(jì)算文本框還能輸入多少個(gè)字符,需要的朋友可以參考下2015-07-07在JavaScript中使用對(duì)數(shù)Math.log()方法的教程
這篇文章主要介紹了在JavaScript中使用對(duì)數(shù)Math.log()方法的教程,是JS入門(mén)學(xué)習(xí)中的基礎(chǔ)知識(shí),需要的朋友可以參考下2015-06-06JavaScript入門(mén)之事件、cookie、定時(shí)等
本文從上一篇文章結(jié)束的地方開(kāi)始,解釋其他的一些基本的JavaScript語(yǔ)言概念,繼續(xù)為初學(xué)者提供對(duì)語(yǔ)言的基礎(chǔ)理解2011-10-10VB倒計(jì)時(shí)器和JS當(dāng)前時(shí)間
VB倒計(jì)時(shí)器和JS當(dāng)前時(shí)間...2006-11-11