今天准备整理出JS中字符串的相关知识,虽然已经整理了思维导图,但是还是自己在整理一篇具体知识点,印象比较深刻
一:资料整理
二:知识点罗列(只要是API)
-
大小写转换
语法:toLowerCase(); msg.toUpperCase(); 举例: var msg="Hello World" var msgLower=msg.toLowerCase(); var msgUpper=msg.toUpperCase(); console.log(msgLower);//hello world console.log(msgUpper);//HELLO WORLD
-
获取指定位置的字符
语法: var char=str.charAt(i); var unicode=str.charCodeAt(i); 举例: var msg="Hello World" console.log(msg.charAt(0));//返回H,获取指定位置字符 console.log(msg.charCodeAt(1));//获取指定位置,Unicode编码
-
获取子字符串
语法: slice(star,[end]);//支持负数参数,含头不含尾 substring(star,[end]);//不支持负数参数,含头不含尾 substr(starti,n)//起始位置,个数 举例: var msg="Hello World" console.log(msg.slice(0,3));//hel console.log(msg.substr(1,3));//ell console.log(msg.substring(1,3));//el
-
查找关键词
1)查找一个固定关键词出现的位置语法:str.indexOf("关键词",fromi)//返回第一次出现子字符串的位置,从fromi位置,如果省略fromi表示,从0位置开始。如果找不到,返回-1 str.lastIndexOf("关键词",fromi)//返回最后一次出现子字符串的位置,从fromi位置,如果省略fromi表示,从0位置开始。如果找不到,返回-1 举例:var msg="Hello World" console.log(msg.indexOf("ll"));//2 console.log(msg.lastIndexOf("o",3));//7 优缺点: 优点:可以指定开始位置,可以找所有 缺点:不支持正则,一次只能找一种关键词 2):判断是否包含符合规则的关键词 语法:var i=str.search(/正则表达式/)// 如果找到,返回关键词的位置,如果找不到,返回-1 优点:支持正则 缺点:1)不能指定位置,只能返回第一次出现的位置 2):只能返回位置,不能返回关键词内容。 3):不支持g,不能返回所有。 3):获取所有关键词的内容 语法:var kwards=str.match(/正则表达式/g)//找不到,返回Null,不加g只找到第一个,加g才找到所有。 优点:获得所有关键词的内容 缺点:无法返回每个关键词的位置 4):即获得每个关键词的内容,又获得每个关键词的位置
替换
语法:
简单替换:str=str.replace(/正则/ig,"替换值");
高级替换:如果希望根据关键词的不同,替换不同的内容时:
str=str.replace(/正则/ig,
function(kwd,$1,...){
return 根据kwd返回不同的值;
}
)
-
切割
简单切割:var subs=str.split("分隔符") 复杂切割:var subs=str.split(/正则表达式/)