js 字符串相关操作
concat
:将多个字符文本连接起来,返回一个新的字符串。
语法:str = str1.concat(str2, str3, ...)
var str1 = '字符串1';
var str2 = ' + 字符串2';
var str = str1.concat(str2);
console.log(str); //字符串1 + 字符串2
indexOf
:返回字符串中检索的字符串第一次出现位置的索引。如果没有匹配项,返回 -1 。
语法:index = str.indexOf(word)
var str = 'abcdefg';
var index1 = str.indexOf('b');
var index2 = str.indexOf('e');
var index3 = str.indexOf('h');
console.log(index1, index2, index3); //1 4 -1
charAt
:返回指定位置的字符。
语法:char = str.charAt(number)
var str = 'abcdefg';
var char = str.charAt(1);
console.log(char); //b
lastIndexOf
:返回字符串中检索的字符最后一次出现的位置索引。如果没有匹配项,返回 -1。
语法:char = str.lastIndexOf(word, number)
参数:
-
word
:需检索的字符串值 -
number
:可选参数,规定在字符串中开始检索的位置。
var str = 'abcdefgabcde';
var index1 = str.lastIndexOf('d');
var index2 = str.lastIndexOf('d', 7);
console.log(index1, index2); //10 3
match
:检查一个字符串匹配正则表达式内容,如果没有匹配返回 null
。
语法:result = str.match(reg)
var str = 'abcdefgabcde';
var reg = new RegExp(/cd/g);
var result = str.match(reg);
console.log(result); //["cd", "cd"]
substring
:返回截取字符串,可传入起始位置和结束位置。
语法:subString1 = str.substring(from, to)
参数:
-
from
:起始位置 -
to
:可选参数,结束位置(不包括结束位置)
var str = 'abcdefgabcde';
var subString1 = str.substring(1);
var subString2 = str.substring(1, 6);
console.log(subString1, subString2); //bcdefgabcde bcdef
substr
:返回截取字符串,可传入起始位置和长度。
语法:subStr = str.substr(from, number)
参数:
-
from
:起始位置 -
number
:可选参数,截取长度
var str = 'abcdefgabcde';
var subStr1 = str.substr(1);
var subStr2 = str.substr(3, 7);
console.log(subStr1, subStr2); //bcdefgabcde defgabc
replace
:在字符串中用一些字符替换另一些字符,或替换一个与正则表达式匹配的子串。
语法:result = str.replace(reg, word)
参数:
-
reg
:正则表达式 -
word
:要替换的字符串
var str = 'abcdefgabcde';
var reg = /defg/;
var result = str.replace(reg, 'xxxx');
console.log(result); //babcxxxxabcde
search
:检索字符串中指定的子串,或检索与正则表达式相匹配的子串。如果没有找到任何匹配的子串返回 -1 。
语法:index = str.search(reg)
var str = 'abcdefgabcde';
var reg = /defg/;
var index = str.search(reg);
console.log(index); //3
slice
:提取字符串的一部分,并返回一个新字符串(与 substring 相同)。
语法:subStr = str.slice(from, to)
参数:
-
from
:起始位置 -
to
:可选参数,结束位置(不包括结束位置)
var str = 'abcdefgabcde';
var subStr1 = str.slice(1);
var subStr2 = str.slice(3, 7);
console.log(subStr1, subStr2); //bcdefgabcde defg
split
:把一个字符串分割成字符串数组。
语法:arr = str.split('')
var str = 'abcdefgabcde';
var arr = str.split('');
console.log(arr); //["a", "b", "c", "d", "e", "f", "g", "a", "b", "c", "d", "e"]
length
:返回字符串的长度,即其包含的字符的个数。
语法:len = str.length
var str = 'abcdefgabcde';
var len = str.length;
console.log(len); //12
toLowerCase
:将整个字符串转成小写字母。
语法:lowerStr = str.toLowerCase()
var str = 'AbCdEfgabcde';
var lowerStr = str.toLowerCase();
console.log(lowerStr); //abcdefgabcde
toUpperCase
:将整个字符串转成大写字母。
语法:upperStr = str.toUpperCase()
var str = 'AbCdEfgabcde';
var upperStr = str.toUpperCase();
console.log(upperStr); //ABCDEFGABCDE