欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

JS中進(jìn)行字符串替換的方法

 更新時(shí)間:2024年01月31日 09:52:47   作者:一室易安  
replace() 方法用于在字符串中用一些字符替換另一些字符,或替換一個(gè)與正則表達(dá)式匹配的子串,這篇文章主要介紹了js中進(jìn)行字符串替換的方法,需要的朋友可以參考下

js中進(jìn)行字符串替換的方法

主要使用 str.replace() 方法:
1,str.replace(“需要替換的字符串”,“新字符串”), 這個(gè)只替換第一個(gè)查找到的字符
2,str.replace(/需要替換的字符串/g,“新字符串”) 這個(gè)全局替換查找到的字符

"yyyy-MM-dd-hh-mm-ss".replace("-","/")    //結(jié)果"yyyy/MM-dd-hh-mm-ss"
"yyyy-MM-dd-hh-mm-ss".replace(/-/g,"/")    //結(jié)果"yyyy/MM/dd/hh/mm/ss"

有時(shí)候也是用在 api中替換中例如:
“https://xxx.con/{id}/aa?spm=1001&articleId=123”.replace(“{id}”,“1111111”)

js中字符串的替換

定義和用法

replace() 方法用于在字符串中用一些字符替換另一些字符,或替換一個(gè)與正則表達(dá)式匹配的子串。

語法

stringObject.replace(regexp/substr,replacement)參數(shù) 描述
regexp/substr 必需。規(guī)定子字符串或要替換的模式的 RegExp 對(duì)象。

請(qǐng)注意,如果該值是一個(gè)字符串,則將它作為要檢索的直接量文本模式,而不是首先被轉(zhuǎn)換為 RegExp 對(duì)象。

replacement 必需。一個(gè)字符串值。規(guī)定了替換文本或生成替換文本的函數(shù)。

返回值

一個(gè)新的字符串,是用 replacement 替換了 regexp 的第一次匹配或所有匹配之后得到的。

說明
字符串 stringObject 的 replace() 方法執(zhí)行的是查找并替換的操作。它將在 stringObject 中查找與 regexp 相匹配的子字符串,然后用 replacement 來替換這些子串。如果 regexp 具有全局標(biāo)志 g,那么 replace() 方法將替換所有匹配的子串。否則,它只替換第一個(gè)匹配子串。

replacement 可以是字符串,也可以是函數(shù)。如果它是字符串,那么每個(gè)匹配都將由字符串替換。但是 replacement 中的 $ 字符具有特定的含義。如下表所示,它說明從模式匹配得到的字符串將用于替換。

字符 替換文本
$1、$2、...、$99 與 regexp 中的第 1 到第 99 個(gè)子表達(dá)式相匹配的文本。
$& 與 regexp 相匹配的子串。
$` 位于匹配子串左側(cè)的文本。
$' 位于匹配子串右側(cè)的文本。
$$ 直接量符號(hào)。

注意:ECMAScript v3 規(guī)定,replace() 方法的參數(shù) replacement 可以是函數(shù)而不是字符串。在這種情況下,每個(gè)匹配都調(diào)用該函數(shù),它返回的字符串將作為替換文本使用。該函數(shù)的第一個(gè)參數(shù)是匹配模式的字符串。接下來的參數(shù)是與模式中的子表達(dá)式匹配的字符串,可以有 0 個(gè)或多個(gè)這樣的參數(shù)。接下來的參數(shù)是一個(gè)整數(shù),聲明了匹配在 stringObject 中出現(xiàn)的位置。最后一個(gè)參數(shù)是 stringObject 本身。
實(shí)例

i、replace方法

該方法的作用是替換字符串中所有指定的字符,然后生成一個(gè)新的字符串。經(jīng)過該方法調(diào)用以后,原來的字符串不發(fā)生改變。例如:

String s = “abcat”;
String s1 = s.replace(‘a(chǎn)',‘1');

該代碼的作用是將字符串s中所有的字符a替換成字符1,生成的新字符串s1的值是“1bc1t”,而字符串s的內(nèi)容不發(fā)生改變。

如果需要將字符串中某個(gè)指定的字符串替換為其它字符串,則可以使用replaceAll方法,例如:

String s = “abatbac”;
String s1 = s.replaceAll(“ba”,“12”);

該代碼的作用是將字符串s中所有的字符串“ab”替換為“12”,生成新的字符串“a12t12c”,而字符串s的內(nèi)容也不發(fā)生改變。

如果只需要替換第一個(gè)出現(xiàn)的指定字符串時(shí),可以使用replaceFirst方法,例如:

String s = “abatbac”;
String s1 = s. replaceFirst (“ba”,“12”);

該代碼的作用是只將字符串s中全局出現(xiàn)的字符串“,”替換為字符串“/”。

var str = "Is,is,the,cost,of,of,gasoline,going,up,up";
document.write(str.replace(/\,/g,'/'));

運(yùn)用正則進(jìn)行全局匹配將全局的“,”替換為“/”。

例子 1
在本例中,我們將使用 "jb51.net" 替換字符串中的 "Microsoft":

<script type="text/javascript">
var str="Visit Microsoft!"
document.write(str.replace(/Microsoft/, "jb51.net"))
</script>

輸出:

Visit jb51.net!

例子 2
在本例中,我們將執(zhí)行一次全局替換,每當(dāng) "Microsoft" 被找到,它就被替換為 "jb51.net":

<script type="text/javascript">
var str="Welcome to Microsoft! "
str=str + "We are proud to announce that Microsoft has "
str=str + "one of the largest Web Developers sites in the world."
document.write(str.replace(/Microsoft/g, "jb51.net"))
</script>

輸出:

Welcome to jb51.net! We are proud to announce that jb51.net
has one of the largest Web Developers sites in the world.

例子 3
您可以使用本例提供的代碼來確保匹配字符串大寫字符的正確:

text = "javascript Tutorial";
text.replace(/javascript/i, "JavaScript");

例子 4
在本例中,我們將把 "Doe, John" 轉(zhuǎn)換為 "John Doe" 的形式:

name = "Doe, John";
name.replace(/(\w+)\s*, \s*(\w+)/, "$2 $1");

例子 5
在本例中,我們將把所有的花引號(hào)替換為直引號(hào):

name = '"a", "b"';
name.replace(/"([^"]*)"/g, "'$1'");

例子 6
在本例中,我們將把字符串中所有單詞的首字母都轉(zhuǎn)換為大寫:

name = 'aaa bbb ccc';
uw=name.replace(/\b\w+\b/g, function(word){
 return word.substring(0,1).toUpperCase()+word.substring(1);}
 );

到此這篇關(guān)于js中進(jìn)行字符串替換的方法的文章就介紹到這了,更多相關(guān)js字符串替換內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

最新評(píng)論