您好,登錄后才能下訂單哦!
這篇文章給大家分享的是有關vue中replace怎么用的內容。小編覺得挺實用的,因此分享給大家做個參考,一起跟隨小編過來看看吧。
在vue中,replace用于匹配指定的字符串并替換,或者替換跳轉時的記錄,語法為“str.replace(regexp/substr,replacement)”或者“router.replace(location)”。
本文操作環境:windows10系統、Vue2.9.6版,DELL G3電腦。
vue.js源碼replace方法
/** * Camelize a hyphen-delimited string. */ var camelizeRE = /-(\w)/g; var camelize = cached(function (str) { return str.replace(camelizeRE, function (_, c) { return c ? c.toUpperCase() : ''; }) }); /** * Hyphenate a camelCase string. */ var hyphenateRE = /\B([A-Z])/g; var hyphenate = cached(function (str) { return str.replace(hyphenateRE, '-$1').toLowerCase() });
str.replace(regexp|substr, newSubStr|
function
)
一個RegExp 對象或者其字面量。該正則所匹配的內容會被第二個參數的返回值替換掉。
一個將被 newSubStr 替換的 字符串。其被視為一整個字符串,而不是一個正則表達式。僅第一個匹配項會被替換。
用于替換掉第一個參數在原字符串中的匹配部分的字符串。該字符串中可以內插一些特殊的變量名。參考下面的使用字符串作為參數。
一個用來創建新子字符串的函數,該函數的返回值將替換掉第一個參數匹配到的結果。參考下面的指定一個函數作為參數。
replace文檔查看
第一種camelize轉換方法:
replace指定一個函數作為參數,通過控制臺看他輸出的內容
上述可以看出replace通過全局正則匹配,類似于exex和test的lastIndex實現
vue源碼中的replace會全局匹配,運行函數體進行newStr的替換
第二種hyphenateRE轉換使用特殊變量名$參數
該方法并不改變調用它的字符串本身,而只是返回一個新的替換后的字符串。
在進行全局的搜索替換時,正則表達式需包含 g 標志。
替換字符串可以插入下面的特殊變量名:
變量名 | 代表的值 |
---|---|
$$ | 插入一個 “$”。 |
$& | 插入匹配的子串。 |
$` | 插入當前匹配的子串左邊的內容。 |
$’ | 插入當前匹配的子串右邊的內容。 |
$n | 假如第一個參數是 RegExp對象,并且 n 是個小于100的非負整數,那么插入第 n 個括號匹配的字符串。提示:索引是從1開始 |
eg:
正則全局匹配非單詞邊界,在這里匹配連字符+大寫字母
,然后-$1
全局替換
感謝各位的閱讀!關于“vue中replace怎么用”這篇文章就分享到這里了,希望以上內容可以對大家有一定的幫助,讓大家可以學到更多知識,如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。