Javascript 字符串常用操作方法
2015-12-11 10:54
726 查看
1、字符串转换
2、字符串分隔
3、查找字符串
4、字符串替换
5、查找指定位置的字符
6、连接多个字符串
7、提取字符串组成新的字符串
8、大小写转换方法
toLocaleLowerCase()和toLocaleUpperCase()方法则是针对特定地区的实现
toLowerCase()和toUpperCase()是两个经典的方法 //但少数语言(如土耳其语言)会为Unicode大小写转换应用特殊的规则,则需要使用上面的方法
9、字符串匹配
/* 你可以将一个数字,布尔值,或一个字符串对象转换为字符串 */ var num= 18; var str1 = num.toString(); //'18' var str2 = String(num); //'18' var str3 = ''+num; //'18'
2、字符串分隔
/* split('分隔符', num):将一个字符串分割成为多个字符串并返回一个数组,第二个参数为返回的字符串数组长度 */ var str = 'I,love,javascript'; var strArr1 = str.split(','); //['I', 'love', 'javascript'] var strArr2 = str.split(',', 2); //['I', 'love']
3、查找字符串
/* indexOf(searchvalue,fromindex):用来检索指定的字符串值在字符串中首次出现的位置。 它可以接收两个参数,searchvalue表示要查找的子字符串,fromindex表示查找的开始位置,省略的话则从开始位置进行检索 */ var str = 'I,love,javascript,javascript'; console.log(str.indexOf('ja')); //7 console.log(str.indexOf('ja', 10)); //18 /* lastIndexOf():语法与indexOf()类似,它返回的是一个指定的子字符串值最后出现的位置,其检索顺序是从后向前 */ var str = 'I,love,javascript,javascript'; console.log(str.lastIndexOf('ja')); //18 console.log(str.lastIndexOf('ja', 10)); //7 /* 如果没有找到对应的值,则返回-1 */
4、字符串替换
/* replace():第一个参数是你要替换的子字符串(或正则表达式),第二个参数是新的子串。 这只会替换匹配的子字符串的第一个实例, 要更换匹配的子字符串的所有实例,使用正则表达式的全局标志 */ var str1 = 'I like javascript, I like javascript'; var str2 = str1.replace('like', 'love'); //'I love javascript, I like javascript' var str3 = str1.replace(/like/g, 'love'); //'I love javascript, I love javascript'
5、查找指定位置的字符
/* charAt(): 查找指定位置的字符 */ var str1 = 'I like javascript'; var str2 = str1.charAt(7); // 'j' /* charCodeAt() 方法可返回指定位置的字符的 Unicode 编码 */ var str1 = 'I like javascript'; var str2 = str1.charCodeAt(7); // 106
6、连接多个字符串
/* 大多数时候连接字符串会使用加法运算符 (+),但也可以使用 concat()方法,连接的字符串会一次呈现 */ var str1 = 'javascript '; var str2 = 'html '; var str3 = 'css'; var str4 = str1+str2+str3; //'javascript html css' var str5 = str1.concat(str2,str3); //'javascript html css'
7、提取字符串组成新的字符串
/* substring(start,end):它可以接收两个参数(参数不能为负值),分别是要截取的开始位置和结束位置,它将返回一个新的字符串,其内容是从start处到end-1处的所有字符 */ var str = 'abcdefg'; console.log(str.substring(1, 4)); //返回bcd console.log(str.substring(1)); //返回bcdefg console.log(str.substring(-1)); //返回abcdefg,传入负值时会视为0 /* slice(start,end):与substring()类似,区别在于,slice()中的参数可以为负值,如果参数是负数,则该参数规定的是从字符串的尾部开始算起的位置 */ var str = 'abcdefg'; console.log(str.slice(1, 4)); //返回bcd console.log(str.slice(-3, -1)); //返回ef console.log(str.slice(1, -1)); //返回bcdef console.log(str.slice(-1, -3)); //返回空字符串,若传入的参数有问题,则返回空 /* substr(start,length):截取从start位置开始的长度为length的字符串,没有指定length,则直接截取到尾部 */ var str = 'abcdefg'; console.log(str.substr(1, 3)); //返回bcd console.log(str.substr(2)); //返回cdefg console.log(str.substr(-2, 4)); //返回fg,目标长度较大的话,以实际截取的长度为准
8、大小写转换方法
toLocaleLowerCase()和toLocaleUpperCase()方法则是针对特定地区的实现
toLowerCase()和toUpperCase()是两个经典的方法 //但少数语言(如土耳其语言)会为Unicode大小写转换应用特殊的规则,则需要使用上面的方法
9、字符串匹配
/* match() 方法可在字符串内检索指定的值,或找到一个或多个正则表达式的匹配 */ var myString = "How much wood could a wood chuck chuck"; var myPattern = /.ood/; var myResult = myString.match(myPattern); // ["wood"] var patternLocation = myResult.index; // 9 var originalString = myResult.input // "How much wood could a wood chuck chuck" /* exec() 方法在调用非全局的 RegExp 对象时与match()返回一样 在调用全局的 RegExp 对象时可以通过反复调用 exec() 方法来遍历字符串中的所有匹配文本 */ var myString = "How much wood could a wood chuck chuck"; var myPattern = /.huck/; var myResult = myPattern.exec(myString); // ["chuck"] var patternLocation = myResult.index; // 27 var originalString = myResult.input // "How much wood could a wood chuck chuck" /* test() 方法用于检测一个字符串是否匹配某个模式,有返回true,否则返回false */ var myString = "&type=test&id=18"; var myPattern = new RegExp('type'); console.log(myPattern.test(myString)); // true var myPattern = new RegExp('web'); console.log(myPattern.test(myString)); // false /* search() 方法,它接受一个正则表达式作为唯一的参数,不执行全局匹配,它将忽略标志 g,并返回模式第一次出现的位置,否则返回 -1 */ var myString = "Assume"; var patternLocation = myString.search(/ume/); // 3
相关文章推荐
- 把DataTable转换为泛型List<T>或是JSON
- jetty发布项目jsp不编译按文本输出问题
- Extjs提交的Json里中文乱码
- JS判断是否是IE浏览器仅仅需要7bytes!
- 页面缓存js问题解决
- 页面缓存js问题解决
- js 时间
- Javascript中改变this指针的指向的三种方法
- js获取手机联网状态
- javascript获取隐藏元素(display:none)的高度和宽度的方法(转)
- JavaScript学习笔记之——初识js
- 向左无缝滚动javascript
- 向右无缝滚动javascript
- 向上无缝滚动javascript
- 动态加载js的方法
- jsp页面编辑匹配下拉选中
- 将 project.json 项目转换为 Visual Studio 2015 解决方案
- 接收前台返回的Json格式参数
- Chrome 中的 JavaScript 断点设置和调试技巧
- web中接收不到自定义控件事件的简单解决方案(修改控件)