替换字符串内容

使用replace() 方法可以替换字符串中指定的字符串。

str = "Please visit Microsoft!";
var n = str.replace("Microsoft", "W3Schools"); // 得Please visit W3Schools!

replace()方法不会替换被叫(调用)字符串。它可以返回一个新的字符串给一个变量。(The replace() method does not change the string it is called on. It returns a new string.)

str.replace() 不会替换这个str里的内容.
而是:str = str.replace() 这样才会被替换。虽然是同样的变量名,但等号左侧的显然成为了一个新的变量。

默认情况下,replace()方法只替换满足条件的第一个字符串。

str = "Please visit Microsoft and Microsoft!";
var n = str.replace("Microsoft", "W3Schools"); // 得Please visit W3Schools and Microsoft!

默认情况下,replace()方法对大小写敏感。

str = "Please visit Microsoft!";
var n = str.replace("MICROSOFT", "W3Schools"); // 得到Please visit Microsoft!

想让replace()对大小写不敏感,可以使用正则表达式/i标识。i来自于insensitive(不敏感)。

str = "Please visit Microsoft!";
var n = str.replace(/MICROSOFT/i, "W3Schools"); // 得到Please visit W3Schools!

提示:正则表达式不用引号。
想让replace()匹配所有的满足条件的字符,可以使用正则表达式/g标识。g来自于global match(不敏感)。

str = "Please visit Microsoft and Microsoft!";
var n = str.replace(/Microsoft/g, "W3Schools"); // 得到Please visit W3Schools and W3Schools!
正则表达式简单介绍

正则表达式是形成搜索模式的一系列字符。正则表达式通常被用来检索、替换那些符合某个模式(规则)的文本。
语法:

/pattern/modifiers;

pattern是字符串匹配的模式。
modifiers是修饰符。

var patt = /w3schools/i;

/w3schools/i是一个正则表达式
w3schools是模式。
i是修饰符(让检索的时候对大小写不敏感)。

var str = "Visit W3Schools";
var n = str.search(/w3schools/i); // 得6

更多的正则表达式的用法,大家可以自己上网查,将来的课程中也会去介绍。

大小写转换

toUpperCase()将字符串转换成大写。

var text1 = "Hello World!"; 
var text2 = text1.toUpperCase(); // HELLO WORLD!

toLowerCase()将字符串转换成小写。

var text1 = "Hello World!";
var text2 = text1.toLowerCase(); // hello world!
concat()方法

concat来自concatenate,是串联的意思。concat()方法用来串联多个字符串。

var text1 = "Hello";
var text2 = "World!";
var text3 = text1.concat(" ",'234234','  12','   ',text2);
document.getElementById("demo").innerHTML = text3; // 得Hello 234234 12 World!

concat()方法也可以用字符串拼接的方法替换。如下面的两行代码作用是一样的。

var text = "Hello" + " " + "World!";
var text = "Hello".concat(" ", "World!");