字符串方法

Posted Feng-Blog

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了字符串方法相关的知识,希望对你有一定的参考价值。

基础知识,学了之后也没用过,都忘了怎么用了,字符串方法和数组方法有点搞混,记录一下

1. charAt() - 返回指定索引位置的字符

第一个字符位置为0,第二个为1,以此类推...
只返回一个字符

实例

let str = "hello word";
let n = str.charAt(4);
document.write(n); // o

2. charCodeAt() - 返回指定位置字符的Unicode编码

实例

let str = "Hello word";
let n = str.charCodeAt(0); //H
document.write(n); // 72

3. indexOf() - 返回字符串中指定字符第一次出现的位置(索引)

返回指定字符首次出现的位置,如果没有找到,返回 -1
区分大小写
接受作为检索起始位置的第二个参数

实例

let str = "Hello beauty, do you like me ?";
let n = str.indexOf("beauty");
document.write(n); // 6

    let str = "The full name of China is the People\'s Republic of China.";
    let pos = str.indexOf("China", 18);
    document.write(str.length);		//57
    document.write(\'<br />\');
    document.write(pos);		//51

4. lastIndexOf() - 返回指定字符最后出现的位置

该方法默认从0开始计算指定字符串出现的最后位置,如果指定第二参数start,则在一个字符串中指定位置从后向前搜索
如果没有找到匹配字符串则返回 -1 。区分大小写

实例

let str = "I am from runoob,welcome to runoob site";
let n = str.lastIndexOf("runoob");
document.write(n); // 28

let str = "I am from runoob,welcome to runoob site";
let n = str.lastIndexOf("runoob",20);
document.write(n);  //10

5. search() - 搜索特定值的字符串,并返回匹配的位置

与indexOf()方法类似,区别在于
- search()方法无法设置第二个开始位置参数
- indexOf()方法无法设置更强大的搜索值(正则表达式)

实例

let str = "Hello beauty, do you like me ?";
let n = str.search("beauty");
document.write(n); // 6

6. concat() - 连接两个或更多字符串,并返回新字符串

没有改变原字符串,但是会返回一个新字符串

实例

let str1 = \'hello \';
let str2 = \'beauty!\';
let n = str1.concat(str2);
document.write(n); //hello beauty!

//concat() 方法可用于代替加运算符。下面两行是等效的:
var text = "Hello" + " " + "World!";
var text = "Hello".concat(" ","World!");

7. includes() - 查找字符串中是否包含指定的字符串

返回布尔值,true/false

实例

let str = "Hello beauty, do you like me ?";
let n = str.includes("beauty");
document.write(n); // true

8. replace() - 在字符串中方查找匹配的子串,并替换与正则表达式匹配的子串

该方法用于在字符串中用一些字符替换另一些字符,或替换一个与正则表达式匹配的子串。
不会改变原始字符串,会返回新的字符串
请注意正则表达式不带引号。

实例

let str="Visit Microsoft! Visit Microsoft!";
let n=str.replace("Microsoft","Runoob");
document.write(n); // Visit Runoob!Visit Microsoft!

let str="Visit Microsoft! Visit Microsoft!";
let n=str.replace(/Microsoft/g,"Runoob");
document.write(n); // Visit Runoob!Visit Microsoft!

9. slice() - 截取字符串(一)

提取字符串的片段,并在新的字符串中返回被提取的部分
slice(start,end) 从第start个开始,截取到第end个结束
slice(-9,-5) 从倒数第9个开始,截取到倒数第5个
slice(3) 若省略第二参数,从第三个字符开始,截取到最后一个字符
slice(-16) 负数是从后面数

实例

let str = "Hello beauty, do you like me ?";
let n = str.slice(6,12);
document.write(n); // beauty

let str = "Hello beauty, do you like me ?";
let n = str.slice(-9, -5);
document.write(n);	//like

let str = "Hello beauty, do you like me ?";
let n = str.slice(5);
document.write(n);	// beauty, do you like me ?

let str = "Hello beauty, do you like me ?";
let n = str.slice(-16);
document.write(n);	// do you like me ?

10. substring() - 截取字符串(二)

类似于 slice() ,区别在于,substring()无法接受负的索引
如果省略第二个参数,则该 substring() 将裁剪字符串的剩余部分。

实例

let str = "Hello beauty, do you like me ?";
let n = str.substring(6,12);
document.write(n); // beauty

11. substr() - 截取字符串(三)

类似 slice(),区别在于第二个参数规定被提取部分的长度
如果省略第二个参数,则该 substr() 将裁剪字符串的剩余部分。
如果首个参数为负,则从字符串的结尾计算位置。
第二个参数不能为负,因为它定义的是长度。

实例

let str = "Hello beauty, do you like me ?";
let n = str.substr(6,6);
document.write(n); // beauty

12. toUpperCase() 把字符串转换为大写

实例

let str = \'hello beauty\';
let n = str.toUpperCase();
document.write(n);		//HELLO BEAUTY

13. toLowerCase() 把字符串转换为小写

实例

let str = \'HELLO BEAUTY\';
let n = str.toLowerCase();
document.write(n);		//hello beauty

14. trim() - 山粗字符串两端的空白符

实例

let str = \'      HELLO BEAUTY     \';
let n = str.trim();
document.write(n);		//HELLO BEAUTY

15. split() - 将字符串转换为数组

实例

let str = \'hello beauty\';
let n = str.split(\'\');
document.write(n);		//h,e,l,l,o, ,b,e,a,u,t,y

以上是关于字符串方法的主要内容,如果未能解决你的问题,请参考以下文章

片段中ListView的setOnItemClickListener

解决方案电影标题中缺少代码的片段,完成挑战更多[关闭]

这是从片段中获取字符串资源的正确方法吗?

将字符串数据从Activity发送到片段[关闭]

VSCode自定义代码片段—— 数组的响应式方法

如何从我的 DatePicker 片段中传输格式化的日期字符串?