国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > JavaScript > 正文

javascript的replace方法結(jié)合正則使用實(shí)例總結(jié)

2019-11-20 09:41:24
字體:
供稿:網(wǎng)友

本文實(shí)例總結(jié)了javascript的replace方法結(jié)合正則使用方法。分享給大家供大家參考,具體如下:

replace()方法用于在字符串中用一些字符替換另一些字符,或者替換一個(gè)正則表達(dá)式匹配的字符串

例子一:直接使用repalce替換

var stringObj="終古人民共和國,終古人民";//替換錯(cuò)別字“終古”為“中國”//并返回替換后的新字符//原字符串stringObj的值沒有改變var newstr=stringObj.replace("終古","中國");//中國人民共和國,終古人民alert(newstr);

例子二:使用正則表達(dá)式,全部替換

var str="終古人民共和國,終古人民";var newstr=str.replace(/(終古)/g,"中國");//中國人民共和國,中國人民alert(newstr);

等價(jià)于

var reg=new RegExp("終古","g"); //創(chuàng)建正則RegExp對象var stringObj="終古人民共和國,終古人民";var newstr=stringObj.replace(reg,"中國");alert(newstr);

例子三:正則表達(dá)式,變量匹配

var resource="終古";var target="中國";var reg=new RegExp(resource,"g"); //創(chuàng)建正則RegExp對象var stringObj="終古人民共和國,終古人民";var newstr=stringObj.replace(reg,target);alert(newstr);

例子四:正則分組匹配

var strM = "javascript is a good script language";//$1匹配的是javascript,$2匹配的是is//最終返回的值是"javascript is fun. it is" + strM//即javascript is 被替換為 javascript is fun. it isalert(strM.replace(/(javascript)/s*(is)/g,"$1 $2 fun. it $2"));

例子五:使用回調(diào)函數(shù)做詳細(xì)處理

var name="aaa bbb ccc";//name字符串去匹配//b/w+/b/g表達(dá)式,結(jié)果有三個(gè)――aaa,bbb,ccc;每個(gè)結(jié)果執(zhí)行function里面的方法var uw = name.replace(//b/w+/b/g,function(word){  //word是匹配的字符串  alert(word); return word.substring(0,1).toUpperCase()+word.substring(1);});alert(uw);

例子六:比較生僻的寫法

var reg=new RegExp("(http://www.qidian.com/BookReader/)(//d+),(//d+).aspx","gmi");var url="http://www.qidian.com/BookReader/1017141,20361055.aspx";//方式一,最簡單常用的方式var rep=url.replace(reg,"$1ShowBook.aspx?bookId=$2&chapterId=$3");alert(rep);//方式二 ,采用固定參數(shù)的回調(diào)函數(shù)var rep2=url.replace(reg,function(m,p1,p2,p3){ return p1+"ShowBook.aspx?bookId="+p3+"&chapterId="+p3});alert(rep2);//方式三,采用非固定參數(shù)的回調(diào)函數(shù)var rep3=url.replace(reg,function(){ var args=arguments; return args[1]+"ShowBook.aspx?bookId="+args[2]+"&chapterId="+args[3];});alert(rep3);
function ReplaceDemo(){ var r, re;      // 聲明變量。 var ss = "The rain in Spain falls mainly in the plain."; // /s表示的是空格,則/S表示的是非空格,因此/(/S+)(/s+)(/S+)/g匹配的是“非空格空格非空格”的結(jié)果 //匹配的結(jié)果有The rain、in Spain、falls mainly、in the //替換后的結(jié)果有rain The、Spain in、mainly falls、the in re = /(/S+)(/s+)(/S+)/g;  // 創(chuàng)建正則表達(dá)式模式。 //更改匹配結(jié)果之間的順序 r = ss.replace(re, "$3$2$1"); // 交換每一對單詞。 return(r);      // 返回結(jié)果字符串。}alert(ReplaceDemo());
name = "Doe, John";//更改兩個(gè)單詞之間的順序var temp = name.replace(/(/w+)/s*, /s*(/w+)/, "$2 $1");alert(temp);
function SDReplaceData(objStr){ return objStr.replace( /(/&|/')/g,   function($0, $1)   {    return{     "&" : "&"    , "'" : "'"    }[$1];   }   );}

PS:這里再為大家提供2款非常方便的正則表達(dá)式工具供大家參考使用:

JavaScript正則表達(dá)式在線測試工具:
http://tools.VeVB.COm/regex/javascript

正則表達(dá)式在線生成工具:
http://tools.VeVB.COm/regex/create_reg

更多關(guān)于JavaScript相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《JavaScript切換特效與技巧總結(jié)》、《JavaScript查找算法技巧總結(jié)》、《JavaScript動(dòng)畫特效與技巧匯總》、《JavaScript錯(cuò)誤與調(diào)試技巧總結(jié)》、《JavaScript數(shù)據(jù)結(jié)構(gòu)與算法技巧總結(jié)》、《JavaScript遍歷算法與技巧總結(jié)》及《JavaScript數(shù)學(xué)運(yùn)算用法總結(jié)

希望本文所述對大家JavaScript程序設(shè)計(jì)有所幫助。

發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 汤阴县| 承德市| 涟水县| 平南县| 三都| 礼泉县| 阿拉善左旗| 方山县| 台山市| 图木舒克市| 榆中县| 衡阳县| 台前县| 潮安县| 丰城市| 松阳县| 通化市| 长汀县| 木里| 孝感市| 额尔古纳市| 普陀区| 新龙县| 农安县| 石景山区| 思南县| 五原县| 大安市| 伊春市| 平度市| 朝阳市| 肥城市| 增城市| 长汀县| 河西区| 来安县| 峨眉山市| 安图县| 大足县| 台中县| 韶关市|