亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

請教關于location.pathname.replace中的正則表達式寫法?不是很理解!

請教關于location.pathname.replace中的正則表達式寫法?不是很理解!

慕少森 2021-07-08 11:07:58
我的:location.pathname 輸出的地址是:/project2/templates/index.htmllocation.pathname.replace(/\/[^/]+$/, "")輸出的地址是:/project2/templates那么正則表達式如何寫才能得到地址:/project2/
查看完整描述

2 回答

?
MMTTMM

TA貢獻1869條經驗 獲得超4個贊

示例代碼如下:
var strM = "javascript is a good script language"; //在此我想將字母a替換成字母A alert(strM.replace("a","A")); [Ctrl+A 全選 注:如需引入外部Js需刷新才能執行]
它只替換了首字母。但如果加上正則表達式結果就不一樣了!replace()支持正則表達式,它可以按照正則表達式的規則匹配字符或字符串,然后給予替換!

注意:被替換的部分不用加雙引號.
var strM = "javascript is a good script language"; //在此我想將字母a替換成字母A alert(strM.replace(/a/,"A")); [Ctrl+A 全選 注:如需引入外部Js需刷新才能執行]
這樣還是只替換了第一個字母a。
var strM = "javascript is a good script language"; //在此將字母a全部替換成字母A alert(strM.replace(/a/g,"A")); [Ctrl+A 全選 注:如需引入外部Js需刷新才能執行]
由上可知,當正則表達式有"g"標志時,代表將處理整個字符串.
var strM = "javascript is a good script language"; alert(strM.replace(/(javascript)\s*(is)/g,"$1 $2 fun. it $2")); [Ctrl+A 全選 注:如需引入外部Js需刷新才能執行]
先看看簡單例子:將所有單詞首字母換成大寫。
var strM = "javascript is a good script language"; function change(word) { return word.indexOf(0).toUpperCase()+word.substring(1); } alert(strM.replace(/\b\w+\b/g,change)); [Ctrl+A 全選 注:如需引入外部Js需刷新才能執行]
由上可知,當正則表達式有"g"標志時,代表將處理整個字符串,即函數change的變換將應用于所有匹配的對象。而該函數有三個或更多參數,具體個數視正則表達式而定。

有了函數與正則表達式的配合,replace()處理字符串的功能空前強大起來了!

最后還舉個例子,將字符串所有單詞倒序,用replace()處理是如此簡單。
var strM = "javascript is a good script language"; function change(word) { var result = word.match(/(\w)/g); if ( result ) { var str = ""; for ( var i=result.length-1; i>=0; i-- ) { str += result; } return str; } else { return "null"; } } alert(strM.replace(/\b(\w)+\b/g,change)); [Ctrl+A 全選 注:如需引入外部Js需刷新才能執行]



查看完整回答
反對 回復 2021-07-11
?
慕容708150

TA貢獻1831條經驗 獲得超4個贊

^\/[^/]+/

查看完整回答
反對 回復 2021-07-11
  • 2 回答
  • 0 關注
  • 487 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號