最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

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

 更新時間:2016年06月16日 10:01:58   作者:hbiao68  
這篇文章主要介紹了javascript的replace方法結(jié)合正則使用技巧,實例總結(jié)了replace方法配合正則表達式進行變量、分組、字符等替換技巧,需要的朋友可以參考下

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

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

例子一:直接使用repalce替換

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

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

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

等價于

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

例子三:正則表達式,變量匹配

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 is
alert(strM.replace(/(javascript)\s*(is)/g,"$1 $2 fun. it $2"));

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

var name="aaa bbb ccc";
//name字符串去匹配/\b\w+\b/g表達式,結(jié)果有三個——aaa,bbb,ccc;每個結(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)建正則表達式模式。
 //更改匹配結(jié)果之間的順序
 r = ss.replace(re, "$3$2$1"); // 交換每一對單詞。
 return(r);      // 返回結(jié)果字符串。
}
alert(ReplaceDemo());

name = "Doe, John";
//更改兩個單詞之間的順序
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款非常方便的正則表達式工具供大家參考使用:

JavaScript正則表達式在線測試工具:
http://tools.jb51.net/regex/javascript

正則表達式在線生成工具:
http://tools.jb51.net/regex/create_reg

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

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

相關(guān)文章

  • JavaScript三元表達式示例詳解

    JavaScript三元表達式示例詳解

    這篇文章主要給大家介紹了關(guān)于JavaScript三元表達式的相關(guān)資料,三元運算符是JavaScript僅有的使用三個操作數(shù)的運算符,文中通過代碼介紹的非常詳細,需要的朋友可以參考下
    2024-02-02
  • js刪除數(shù)組中指定元素的幾種方式

    js刪除數(shù)組中指定元素的幾種方式

    js數(shù)組是js部分非常重要的知識,有時我們有這么個需求js數(shù)組刪除指定元素,下面這篇文章主要給大家介紹了關(guān)于js刪除數(shù)組中指定元素的幾種方式,文中通過實例代碼介紹的非常詳細,需要的朋友可以參考下
    2023-01-01
  • 前端實現(xiàn)圖片壓縮方案總結(jié)(干貨)

    前端實現(xiàn)圖片壓縮方案總結(jié)(干貨)

    這篇文章主要介紹了前端實現(xiàn)圖片壓縮的幾種方法和技術(shù),包括使用HTML5的canvas元素和推薦的第三方庫image-magic-adapter,文中通過代碼介紹的非常詳細,需要的朋友可以參考下
    2025-01-01
  • uniapp實現(xiàn)tabBar-switchTab之間的傳參方法

    uniapp實現(xiàn)tabBar-switchTab之間的傳參方法

    這篇文章主要介紹了uniapp實現(xiàn)tabBar-switchTab之間的傳參方式,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2024-01-01
  • JS基于構(gòu)造函數(shù)實現(xiàn)的菜單滑動顯隱效果【測試可用】

    JS基于構(gòu)造函數(shù)實現(xiàn)的菜單滑動顯隱效果【測試可用】

    這篇文章主要介紹了JS基于構(gòu)造函數(shù)實現(xiàn)的菜單滑動顯隱效果,可實現(xiàn)基本的菜單折疊與展開功能,涉及javascript響應鼠標事件動態(tài)操作頁面元素的相關(guān)技巧,需要的朋友可以參考下
    2016-06-06
  • javascript動態(tài)創(chuàng)建及刪除元素的方法

    javascript動態(tài)創(chuàng)建及刪除元素的方法

    這篇文章主要介紹了javascript動態(tài)創(chuàng)建及刪除元素的方法,涉及針對DOM元素操作的技巧,非常具有實用價值,需要的朋友可以參考下
    2014-12-12
  • js實現(xiàn)上傳圖片及時預覽

    js實現(xiàn)上傳圖片及時預覽

    這篇文章主要為大家詳細介紹了js實現(xiàn)上傳圖片及時預覽的相關(guān)資料,具有一定的參考價值,感興趣的朋友可以參考一下
    2016-05-05
  • javascript深入理解js閉包

    javascript深入理解js閉包

    閉包(closure)是Javascript語言的一個難點,也是它的特色,很多高級應用都要依靠閉包實現(xiàn)。
    2010-07-07
  • Bootstrap輪播插件簡單使用方法介紹

    Bootstrap輪播插件簡單使用方法介紹

    這篇文章主要為大家詳細介紹了Bootstrap輪播插件簡單使用方法,介紹了使用bootstrap輪播插件的作用,感興趣的小伙伴們可以參考一下
    2016-06-06
  • 淺談JS之iframe中的窗口

    淺談JS之iframe中的窗口

    下面小編就為大家?guī)硪黄獪\談JS之iframe中的窗口。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2016-09-09

最新評論

深泽县| 冷水江市| 建平县| 绥江县| 赣州市| 长寿区| 安新县| 衢州市| 德兴市| 崇仁县| 阜南县| 金沙县| 石家庄市| 新巴尔虎左旗| 延庆县| 含山县| 嘉兴市| 黔南| 鹤峰县| 九寨沟县| 合水县| 伊宁市| 惠水县| 类乌齐县| 柳河县| 宣城市| 济源市| 龙游县| 山西省| 象州县| 印江| 建水县| 阳山县| 抚远县| 定日县| 珠海市| 新疆| 依兰县| 博湖县| 蒙城县| 钟山县|