前言:
本篇文章分为两大类:1、文字类总结;2、代码示例
尽量简洁明了的概括一下常用的字符串方法,将近20种方法
文字总结:
- indexOf:只传一个参数的话,查找第一个指定字符的位置,返回相应的下标值,未找到则返回-1,两个参数indexOf('要查找的字符',开始的位置)。
- lastIndexOf:从后往前查找,其余同上,注意下标值是正常顺序。
- chartAt(下标):返回指定下标位置的字符。等同str[下标]。
- str[下标]:返回指定下标位置的字符。等同chartAt。
- charCodeAt(下标):返回指定下标位置的字符的ASCII值。
- toUpperCase:将字符串转换成大写。
- toLowerCase:将字符串转换成小写。
- trim:删除字符串两侧的空格,注意只删除两边,中间的空格不会删除。
- length:返回字符串的长度。
- concat:字符串拼接,得到新的字符串,我们一般还是喜欢用+号方便。
- slice(n,m):字符串的截取,返回n-m之间的字符串,注意n取值,m不取值,包头不包尾,同substring
- substring(n,m):字符串的截取,返回n-m之间的字符串,注意n取值,m不取值,包头不包尾,同slice
- substr(n,m):从n开始取,取m个。
- replace('被替换的字符','替换成的字符'):字符串的替换,只会替换第一个字符,想要全部替换,可以做while循环判断实现(代码示例),此方法还可支持正则。
- split('分割符'):会拆分成数组,类似数组方法的join,此方法支持正则(代码示例)
- search:字符串的正则方法,返回查找的字符串下标,找不到返回-1。
- match:字符串的正则方法,返回查找的字符串,以数组的新式返回,找不到返回null。
代码示例:
全部以字符串'hello World'为例,没人能拒绝的了hello world吧!
var str = 'hello World';
// 1、 indexOf 查找第一个指定字符位置, 返回下标值,未找到返回-1
// console.log(str.indexOf('o',1)); //从下标1开始查找字符o , 返回4
// 2、 lastIndexOf 查找最后一个指定字符位置 返回下标值
// 3、 charAt(下标) 返回指定位置的字符
// console.log(str.charAt(4)); // 查找下标为4的字符 返回o
// for (var i = 0; i < str.length; i++) {
// console.log(str.charAt(i)); // 也可以遍历所有的字符
// }
// 4、 str[下标] 返回指定位置的字符。 等同chartAt
// console.log(str[4]); // 查找下标为4的字符. 返回 o
// 5、 charCodeAt(下标) 返回对应字符的ASCII值
// console.log(str.charCodeAt(3)); // l的ASCII值是 108
// 6、 toUpperCase 转换成大写
// console.log(str.toUpperCase()); // HELLO WORLD
// 7、 toLowerCase 转换成小写
// console.log(str.toLowerCase()); // hello world
// 8、 trim 删除两侧的空格 返回新的字符串,原字符串不受影响
// console.log(str.trim());
// 9、 length 返回字符串长度 ;
// console.log(str.length); 11
// 10、 concat + 字符串拼接 得到新的字符串,对原数组没影响
// var str3 = '';
// console.log(str3.concat(str,str2)); //'hello Worldok'
// console.log(str+str2); //'hello Worldok'
// 11、 slice(n,m) 返回n到m之间的字符串 包头不包尾 同下 字符串的截取
// 12、 substring(n,m) 返回n到m之间的字符串 包头不包尾 同上 字符串的截取 如果是负数整个返回
// console.log(str.slice(2,4)); ll 从第2位开始取,到第4位结束,第4位不取值
// console.log(str.substring(2,4)); ll 从第2位开始取,到第4位结束,第4位不取值
// 13、substr(n,m) 返回n开始的m个字符
// console.log(str.substr(1,4)); ello
// 字符串的正则方法:
// 不用正则的字符串替换
// 14、 replace('被替换的字符','替换成的字符') 只会替换第一个字符 字符串的替换
// while(str.indexOf('l')!==-1){
// str = str.replace('l','*')
// }
// console.log(str); // he**o Wor*d
// console.log(str);
// 利用正则的字符串替换: 将a和c都换成*
// var reg = /[ac]/g;
// var str = 'abcd abcd abcd';
// console.log(str.replace(reg,'**'));
// 不用正则的字符串分割成数组
// 15、 split('分割符') 会转换成数组类型。 类似数组方法的join
//console.log(str.split(' ')); //根据什么符号进行分割成数组 ['hello','World']
// 利用正则的字符串分割成数组
// var reg = / /g; //这里根据空格进行分割成数组 ['hello','World']
// console.log(str.split(reg));
// 16、 search 方法 返回查找的字符串下标, 找不到返回-1
// var reg = /e/g
// console.log(str.search(reg)); // 1
// 17、 match 方法 // 返回查找的字符串,数组形式 找不到返回 null
// var reg = /m/g;
// var reg1 = /l/g;
// console.log(str.match(reg)); // null
// console.log(str.match(reg1)); // ['l','l','l']
总结:
以上就是本篇文章的全部内容,希望能帮到需要帮助的同学,码字不易,感谢阅读。