正則替換replace中 1的用法

2022-07-19 20:12:15 字數 2697 閱讀 2123

一、repalce定義

用於在字串中用一些字元替換另一些字元,或替換乙個與正規表示式匹配的子串。12

345stringobject.replace(regexp/substr,replacement);

引數一:必需,規定的字串或者正規表示式

引數二:必需,乙個字串值。規定了替換文字或生成替換文字的函式。

!!!replacement 中的 $ 字元具有特定的含義。詳情見w3c

二、有$1,$2...的例子12

345//把 "doe, john" 轉換為 "john doe" 的形式:

varstr ="doe, john";

str.replace(/(\w+)\s*, \s*(\w+)/,"$2 $1");

說明:$1,$2上就是按順序對應小括號裡面的小正則 捕獲到的內容。

三,第二個引數是函式12

3456

78910

1112

把字串中所有單詞的首字母都轉換為大寫:

varstr ='aaa bbb ccc';

uw=str.replace(/\b\w+\b/g,function(word)

);

說明:匹配一次就執行一次函式,匹配的內容作為引數

//把數字轉成對應的漢子

varary=["一","二","三","四","五","六"]

"123456".replace(/\d/g,function(val))

四、乙個栗子,實現模板字元替換12

3456

varobj =

varstr ="我是},name是我的名字,我今年}歲";

//最終替換成"我是leaf,name是我的名字,我今年20歲"

實現:123

functionrender(template, context) \}/g, (match, key) => context[key.trim()]);

}

說明:1、.*? 非貪婪匹配模式

2、每個匹配的這則組合執行一次函式

五、其他常用正則替換12

3456

78910

1112

1314

1516

1718

1920

2122

2324

2526

2728

2930

3132

3334

3536

37//去除空格

string.prototype.trim = function()

//去除換行

function clearbr(key)

//去除左側空格

function ltrim(str)

//去右空格

function rtrim(str)

//去掉字串兩端的空格

function trim(str)

//去除字串中間空格

function ctim(str)

//是否為由數字組成的字串

function is_digitals(str)

//單詞首字母大寫

function upppercase(str)

不用正則實現js中replace全域性替換的功能

1.我們替換,一般用下面方法 qwew replace w g,這種方法,很方便 2.問題是萬一我們要替換的內容中含有特殊字元,如 這種情況下,我們就必須將 進行轉義,即 qw ew replace w g,3.還有些具體的情況下,如我們要替換的內容是可變的且含有特殊字元,那麼我們用2的方法就顯得很...

replace中的正則

replace 把原有的字元替換成新的字元 var str pku2016pku2017 str str.replace pku pkusoft console.log str pkusoft2016pku2017在不使用正則的情況下,每次執行只能替換乙個字元,每次執行都是從0開始替換,有重複的,無...

JS中replace全部替換

今天遇到乙個問題,用replace只能替換乙個字元,不能替換字串中的全部字元,在網上找了很久也沒找到答案,有的說用 string.prototype.replaceall function findtext,reptext let regexp new regexp findtext,g retur...