好湿?好紧?好多水好爽自慰,久久久噜久噜久久综合,成人做爰A片免费看黄冈,机机对机机30分钟无遮挡

主頁 > 知識庫 > js中string之正則表達式replace方法詳解

js中string之正則表達式replace方法詳解

熱門標簽:ai電話機器人搭建 西藏智能外呼系統代理商 外呼系統無呼出路由是什么原因 甘肅醫療外呼系統排名 地圖標注教學點 貴港公司如何申請400電話 400電話辦理電話辦理 呼叫系統外呼只能兩次 梅縣地圖標注

replace方法是javascript涉及到正則表達式中較為復雜的一個方法,嚴格上說應該是string對象的方法。只不過牽扯到正則的時候比較多一些。需要我們靈活的使用。

語法: stringObj.replace(regexp/substr,replacement);

第一個參數:必需。字符串中要替換的子串或正則RexExp;

第二個參數:必需,一個字符串值,規定了替換文本或生成替換文本的函數。

返回值:注意它的返回值是一個新的字符串,并沒有更改原有字符串,是用 replacement 替換了 regexp 的第一次匹配或所有匹配之后得到的。

所以根據它的參數的不同分為很多種情況,以下一一對各種情況加以分析:

NO.1 兩個參數都是字符串

var str1 = '這是一段原始文本,需要替換的內容"這要替換"!';
var newStr = str1.replace('這要替換','need replace');
console.log( newStr );  //輸出:  這是一段原始文本,需要替換的內容"need replace"!

上面的例子中第二個參數字符串'need replace',替換掉了第一個參數字符串'這要替換'。這是最簡單的一種形式。

NO.2 第一個參數是正則,第二個參數是字符串

var str2 = '這是一段原始文本,需要替換的內容"ac這要替換bb"!';
var newStr = str2.replace( /([a-z])+/g,'qqq' );
console.log( newStr );  //輸出:  這是一段原始文本,需要替換的內容"qqq這要替換qqq"!

上面的例子字符串'qqq',替換了正則匹配的內容。如果 regexp 具有全局標志 g,那么 replace() 方法將替換所有匹配的子串。否則,它只替換第一個匹配子串。

NO.3 第一個參數是正則,第二個參數是帶$符的字符串

var str3 = '這是一段原始文本,"3c這要替換4d"!';
var newStr = str3.replace( /([0-9])([a-z])/g,"$1" );
console.log( newStr );  //輸出:  這是一段原始文本,"3這要替換4"!';

上面的例子,$1表示regexp中的第一個子表示即([0-9])匹配單個數字,同理若是$2則表示第二個子表示即([a-z]);所以,'3c'這個匹配到的整體被第一個子表示說表示的'3'替換,'4d'被第一個子表示匹配的數字'4'所替換。其他幾個同理可得:

(/([0-9])([a-z])/g,”$2″)—>////輸出: 這是一段原始文本,”c這要替換d”!'; (3c和4d被相應的第二個子表示匹配出來的c和d替換)(/([0-9])([a-z])/g,”$'”)—>////輸出: 這是一段原始文本,”這要替換d”!這要替換”!”!'; (3c被3c右側文本替換,4d右側是”!替換,所以出現倆次)

NO.4 第一個參數是正則,第二個參數函數

var str4 = '這是一段原始文本,需要替換的內容"aa這要bbb替換ccccc"!';
var newStr = str4.replace( /[a-z]+/g,function ($0){
  var str = '';
  for (var i = 0; i  $0.length; i++) {
    str += '*';
  };
  return str;
} );
console.log( newStr );  //這是一段原始文本,需要替換的內容"**這要***替換*****"!

上面的例子函數的第一個參數為匹配的regexp的整體,根據長度函數返回值為相應替換的文本;

NO.5 第一個參數是正則且有子表達式,第二個參數函數且帶有多個參數

var str5 = '這是一段原始文本,需要替換的內容"3c這要替換4d"!';
var newStr = str5.replace( /([0-9])([a-z])/g,function (arg1,arg2,arg3,arg4,arg5){
 console.log( arg1 );
 console.log( arg2 );
 console.log( arg3 );
 console.log( arg4 );
 console.log( arg5 );
} );

輸出:

3c
3
c
17
這是一段原始文本,需要替換的內容"3c這要替換4d"!
4d
4
d
23

這是一段原始文本,需要替換的內容"3c這要替換4d"!

上面的例子第一個參數arg1表示匹配的整體,arg2表示第一個子表達式,arg3表示第二個子表達式,接下來的參數arg4是一個整數,聲明了表示子匹配在 stringObject 中出現的位置。最后一個參數是 stringObject 本身。

以上就是replace方法各種可能的情況。確實是一個需要深入理解的方法,不過確實也很強大的一個方法,值得深入研究!

您可能感興趣的文章:
  • String字符串匹配javascript 正則表達式
  • javascript正則表達式和字符串RegExp and String(二)
  • javascript正則表達式和字符串RegExp and String(一)
  • Js 利用正則表達式和replace函數獲取string中所有被匹配到的文本(推薦)

標簽:常州 哈密 泰安 涼山 海口 本溪 湖州 大興安嶺

巨人網絡通訊聲明:本文標題《js中string之正則表達式replace方法詳解》,本文關鍵詞  中,string,之,正則,表達式,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《js中string之正則表達式replace方法詳解》相關的同類信息!
  • 本頁收集關于js中string之正則表達式replace方法詳解的相關信息資訊供網民參考!
  • 推薦文章
    主站蜘蛛池模板: 性的奴隶| 91情侣在线偷精品国产| 翁虹三级情难自禁在线观看| 国产成年人视频| 无码人妻丰满熟妇区蜜臀涩图 | 91久久偷偷做嫩草影院| 在学校硬了被女同学摸网站| 狠狠色丁香九九婷婷综合五月| ??男生???男生??里外网| 看全黄大色黄大片美女51la | 日韩人妻无码精品一区二区三区| 亚丝娜被爆?羞羞漫画| 成在人线| 三男大战波多野结衣11p| 双女车车好快的车车有点污| 欧美xx性在线| 年轻的女教师6韩国dh| 啊好痛嗯轻一点欧美| 无人视频在线观看完整版高清免费| 我是爸爸的女人中字头| 古装午夜理伦三级播放| xfplay5566色资源网站| 寡妇野外啪啪一区二区| 天天爽夜夜爽人人爽一区二区| 国产精品秘?麻豆果冻传媒潘甜甜丶| 好紧好爽再搔一点浪一点老板| 国产成人在线小视频| 5g影院天天5g天天爽大陆| 大学情侣露脸国产在线一区| 国产客厅午睡碎花裙扒内裤| 可播放的欧美男男videos| 精品亚洲AV无码喷奶水东京热| 男女18视频| 717韩国三级理伦电影| 中国老太浓毛毛茸毛| 美女脱了内裤让男生吻视频| 性生活片1| 国产美女19p爽一下| 韩国精品韩国专区久久| 茄子视频免费观看| 饥渴难耐的岳让我使劲弄|