JavaScript 字符串操作(给索引查字符/给字符查索引/uri 编码和解码/字符串拼接/字符串截取/去掉空白/替换/变为数组/查找字符串中所有匹配项)
2017-03-06 21:03
756 查看
JavaScript 字符串操作
① 给索引查字符 ( charAt / charCodeAt )
charAt,获取相应位置字符(参数: 字符位置)
注释:字符串中第一个字符的下标是 0。如果参数 index 不在 0 与 string.length 之间,该方法将返回一个空字符串。
charCodeAt,获取相应位置字符编码(参数: 字符位置)
charAt()方法和charCodeAt()方法用于选取字符串中某一位置上的单个字符
区别:charCodeAt()方法,它并不返回指定位置上的字符本身,而是返回该字符在Unicode字符集中的编码值。如果该位置没有字符,返回值为NaN.
② 给字符查索引(indexOf / lastIndexOf)
indexOf,从前向后索引字符串位置(参数: 索引字符串)
从前面寻找第一个符合元素的位置
lastIndexOf,从后向前索引字符串位置(参数:索引字符串)
从后面寻找第一个符合元素的位置
找不到则返回 -1
③ uri 编码和解码
URI (Uniform ResourceIdentifiers,通用资源标识符)进行编码,以便发送给浏览器。有效的URI中不能包含某些字符,例如空格。而这URI编码方法就可以对URI进行编码,它们用特殊的UTF-8编码替换所有无效的字符,从而让浏览器能够接受和理解。(它们是BOM下的一个方法,属于window对象)
encodeURIComponent() 函数可把字符串作为 URI 组件进行编码
decodeURIComponent() 函数可把字符串作为 URI 组件进行解码
④ 字符串的链接(concat)
⑤ 字符串的截取
slice,截取字符串(参数:1. 截取位置【必须】,2. 终结点)
substr,截取字符串(参数:1. 截取位置【必须】,2. 截取长度)
substring 同slice
⑥ 特殊方法
trim( ) 只能去除字符串前后两端的空白
replace( ) 替换
split( ) 把字符串切割成数组,和 join方法(数组转为字符串) 是天生一对
to(Locale)UpperCase() 转换大写
to(Locale)LowerCase() 转换小写
案例:如何在一个字符串中查找所有的匹配项?
① 给索引查字符 ( charAt / charCodeAt )
charAt,获取相应位置字符(参数: 字符位置)
注释:字符串中第一个字符的下标是 0。如果参数 index 不在 0 与 string.length 之间,该方法将返回一个空字符串。
charCodeAt,获取相应位置字符编码(参数: 字符位置)
charAt()方法和charCodeAt()方法用于选取字符串中某一位置上的单个字符
区别:charCodeAt()方法,它并不返回指定位置上的字符本身,而是返回该字符在Unicode字符集中的编码值。如果该位置没有字符,返回值为NaN.
字符/字符编码 = Str.charAt/charCodeAt(索引值);
② 给字符查索引(indexOf / lastIndexOf)
indexOf,从前向后索引字符串位置(参数: 索引字符串)
从前面寻找第一个符合元素的位置
lastIndexOf,从后向前索引字符串位置(参数:索引字符串)
从后面寻找第一个符合元素的位置
找不到则返回 -1
索引值 = str.indexOf/lastIndexOf(想要查询的字符);
③ uri 编码和解码
URI (Uniform ResourceIdentifiers,通用资源标识符)进行编码,以便发送给浏览器。有效的URI中不能包含某些字符,例如空格。而这URI编码方法就可以对URI进行编码,它们用特殊的UTF-8编码替换所有无效的字符,从而让浏览器能够接受和理解。(它们是BOM下的一个方法,属于window对象)
encodeURIComponent() 函数可把字符串作为 URI 组件进行编码
decodeURIComponent() 函数可把字符串作为 URI 组件进行解码
④ 字符串的链接(concat)
新字符串 = str1.concat(str2); 链接两个字符串
⑤ 字符串的截取
slice,截取字符串(参数:1. 截取位置【必须】,2. 终结点)
字符串 = str.slice(索引1,索引2); //两个参数都是索引值。 //(2,5) 正常包左不包右 //(2) 从指定的索引位置剪到最后 //(-3) 从倒数第几个剪到最后 //(5,2) 前面的大,后面的小,无意义,空
substr,截取字符串(参数:1. 截取位置【必须】,2. 截取长度)
字符串 = str.substr(参数1,参数2); //1索引值,2长度 // 第一个参数为从索引位置取值,第二个参数返回字符长度 //(2,4)从索引值为2的字符开始,截取4个字符 //(1) 一个值,从指定位置到最后 //(-3) 从倒数第几个剪到最后 // 不包括前大后小的情况
substring 同slice
字符串 = str.substring(参数1,参数2); //两个参数都是索引值。 //不同1:参数智能调转位置 //不同2:参数负值,将全部获取字符串 //(2,5) 正常包左不包右 //(2) 从指定的索引位置剪到最后 //(-3) 获取全部字符串 //(5,2) 前面的大,后面的小,不是空,同(2,5),智能调换
⑥ 特殊方法
trim( ) 只能去除字符串前后两端的空白
var str = " aaa bnn dccc " console.log(str.trim()); //aaa bnn dccc
replace( ) 替换
var str = "abc"; console.log(str.replace("a","b"));//bbc
split( ) 把字符串切割成数组,和 join方法(数组转为字符串) 是天生一对
var str = "我-爱-你-中-国"; //若参数为空字符串"",默认用逗号把字符串中的每个元素分隔 console.log(str.split(""));//["我", "-", "爱", "-", "你", "-", "中", "-", "国"] //若不写参数,整个字符串作为数组的一个元素 console.log(str.split());//["我-爱-你-中-国"] //分隔完毕之后,使用的工具将不存在数组中 console.log(str.split("-"));//["我", "爱", "你", "中", "国"]
to(Locale)UpperCase() 转换大写
to(Locale)LowerCase() 转换小写
案例:如何在一个字符串中查找所有的匹配项?
var arr1 = 'a,b,d,e,f,e,f,e,g'.split(','); //找到第一个e的索引 arr1.indexOf('e');//3 //等价于(第二个参数:从第0个位置开始找) arr1.indexOf('e',0);//3 //找到第二个e的索引(从第一个找到的位置的下一个位置开始找) arr1.indexOf('e',4);//5 //找到所有的e var i1 = arr1.indexOf('e'); var i2 = arr1.indexOf('e', i1 + 1); var i3 = arr1.indexOf('e', i2 + 1); var i4 = arr1.indexOf('e', i3 + 1); //将上述代码从形式上转换成一模一样的代码 //将其写入循环(while) i1 = -1; while(1){ i1 = arr1.indexOf('e', i1 + 1); //什么时候跳出? //如果i1结果是-1,说明从左往右查找字符串都没有得到需要的数据,即已经遍历完所有数据 if(i1 == -1){ break; } } //改良(bug:进不去循环) var i1 = -1; while(i1 != -1){ i1 = arr1.indexOf('e', i1 + 1); } //先做一次再进循环 var i1 = -1; do{ i1 = arr1.indexOf('e', i1 + 1); if(i1 != -1){ console.log(i1); } }while(i1 != -1);
相关文章推荐
- oracle操作字符串:拼接、替换、截取、查找
- 黄聪:PHP字符串操作(string替换、删除、截取、复制、连接、比较、查找、包含、大小写转换、切割成数组等)
- oracle操作字符串:拼接、替换、截取、查找
- oracle操作字符串:拼接、替换、截取、查找、长度、判断
- oracle操作字符串:拼接、替换、截取、查找
- iOS NSSting 关于字符串的查找、截取、拆分、替换、验证、改变大小写、编码解码等
- 将用户输入的字符串转换为可换行、替换Html编码、无危害数据库特殊字符、去掉首尾空白、的安全方便代码
- oracle操作字符串:拼接、替换、截取、查找
- 将用户输入的字符串转换为可换行、替换Html编码、无危害数据库特殊字符、去掉首尾空白、的安全方便代码
- python字符串操作,截取,拼接,替换,删除,比较,查找
- oracle操作字符串:拼接、替换、截取、查找
- oracle操作字符串:拼接、替换、截取、查找
- oracle操作字符串:拼接、替换、截取、查找
- Oracle 操作字符串:拼接、替换、截取、查找
- oracle操作字符串:拼接、替换、截取、查找
- NSString:创建,长度,取字符,是否以某字符串开头,结尾, 查找指定字符串的范围,截取,拼接,替换,比较,替换,数值转换,大小写转换
- oracle操作字符串:拼接、替换、截取、查找(修改版)
- 批处理文件操作:替换文本文件某系字符写入新文件、遍历目录并进行字符串替换、拷贝文件到新目录、去掉文件扩展名
- Python 字符串操作(string替换、删除、截取、复制、连接、比较、查找、包含、大小写转换、分割等)
- 黄聪:Python 字符串操作(string替换、删除、截取、复制、连接、比较、查找、包含、大小写转换、分割等)