js罕见字符串操作方法

一、字符串要领

1、字符串转换:
将一个值转换成一个字符串有两种要领,一是运用 toString() 要领,二是运用转型函数 String()
(1)、大多值都有toString()要领,null和undefined是没有的。

(2)、关于字符串型的值也能够运用toString()要领,它会返回该字符串的一个副本。

(3)、toString()要领能够通报一个参数,示意数值的基数(进制)。

 var t = 8;  
 t.toString(2);  //1000 

默许情况下 参数是10。要申明的是关于非数值范例(boolean,string等)设置toString()的参数是无效的

var t ="8";  
t.toString(2);  //8, 返回字符串的副本;
    

(4)、任何值都能够运用String()要领。它的历程是如许的

    起首,假如值有toString()要领,那末则运用该要领(无参数)。

    其次,那就是该值没有toString()要领,那就是 null 返回 “null”,undefined返回”undefined”;
   

var a=null;  
String(a);    //"null"

2、字符串支解:
字符串支解,将一个字符串根据某种体式格局支解成字符串数组,运用 split(separator,howmany) 要领,
第一个参数必须,,为字符串或正则表达式,从该参数指定的处所支解字符串;
第二个参数可选,可指定返回的数组的最大长度

var myStr = "I,Love,You,Do,you,love,me";
var substrArray = myStr .split(","); // ["I", "Love", "You", "Do", "you", "love", "me"];
var arrayLimited = myStr .split(",", 3); // ["I", "Love", "You"];

3、猎取字符串长度
猎取字符串长度,直接运用 str.length 属性

var myStr = "I,Love,You,Do,you,love,me";
var myStrLength = myStr.length; //25

4、查询子字符串
查询子字符串,能够运用 indexOf()lastIndexOf() 要领
(1)indexOf():从字符串的第一个字符位置最先查找,找到后返回对应下标,找不到返回 -1 ;

var myStr = "I,Love,you,Do,you,love,me";
var index = myStr.indexOf("Love"); // 2 ,基于0最先,找不到返回-1,辨别大小写

(2)lastIndexOf():从字符串的末端最先查找,找到末了涌现指定字符串的位置后返回对应下标,找不到返回 -1 ;

var myStr = "I,Love,you,Do,you,love,me";
var index = myStr.lastIndexOf("you"); // 14 //辨别大小写

5、字符串替代
替代字符串,运用 strObj.replace(regexp/substr,replacement) 要领,
第一个参数必须,划定要婚配的正则对象,
第二个参数必须,划定了替代文本或天生替代文本的函数。

 var myStr = "I,Love,you,Do,you,love,me";
 var replacedStr = myStr.replace(/love/g,"hate");//"I,Love,you,Do,you,hate,me",全局婚配(g)
var myStr = "I,Love,you,Do,you,love,me";
var replacedStr = myStr.replace(/love/g,"hate");//"I,hate,you,Do,you,hate,me",疏忽大小写(i)

6、查找给定位置的字符或其字符编码值
想要查找给定位置的字符,你能够运用以下函数:

var myStr = "I,love,you,Do,you,love,me";
var theChar = myStr.charAt(8);// "o",一样从0最先
   

一样,它的一个兄弟函数就是查找对应位置的字符编码值,如:

var myStr = "I,love,you,Do,you,love,me";
var theChar = myStr.charCodeAt(8); //111
   

7、字符串拼接
字符串衔接操纵能够简朴到用一个加法运算符搞定,如:

var str1 = "I,love,you!";
var str2 = "Do,you,love,me?";
var str = str1 + str2 + "Yes!";//"I,love,you!Do,you,love,me?Yes!"
   

运用js自带 strObj1.concat(strObj2) 要领也可完成

var str1 = "I,love,you!";
var str2 = "Do,you,love,me?";
var str = str1.concat(str2);//"I,love,you!Do,you,love,me?"
   

8、字符串切割和提取
有三种要领可完成,分别为:
(1)、strObj.slice(satrt,end):第一个参数必须,要提取字符串的肇端下标。假如为负数的话,则该参数划定的是从字符串的尾部最先算起的位置。也就是说,-1 指字符串的末了一个字符,-2 指倒数第二个字符,以此类推,第二个参数可选,与strObj.substring()相似。

 var myStr = "I,love,you,Do,you,love,me";
 var subStr = myStr.slice(1,5);//",lov"
   

(2)、strObj.substring(start,end):第一个参数必须,不能为负数,提取字符串初始位置,第二个参数可选,strObj[end]不提取。

var myStr = "I,love,you,Do,you,love,me";
var subStr = myStr.substring(1,5); //",lov";
   

(3)、strObj,substr(start,length):第一个参数必须,提取字符串的初始位置,第二个参数可选,示意提取字符串长度,不写的话默许提取到字符串末端。

var myStr = "I,love,you,Do,you,love,me";
var subStr = myStr.substr(1,5); //",love"
   

9、字符串大小写转换
经常使用的转换为大写或许小写字符串函数,以下:

var myStr = "I,love,you,Do,you,love,me";
var lowCaseStr = myStr.toLowerCase();//"i,love,you,do,you,love,me";
var upCaseStr = myStr.toUpperCase();//"I,LOVE,YOU,DO,YOU,LOVE,ME"
  

10、字符串婚配

字符串婚配能够须要你对正则表达式有肯定的相识,先来看看match()函数:
   var myStr = "I,love,you,Do,you,love,me";
   var pattern = /love/;
   var result = myStr.match(pattern);//["love"]
   console.log(result .index);//2
   console.log(result.input );//I,love,you,Do,you,love,me

如你所见,match()函数在字符串上挪用,而且接收一个正则的参数。来看看第二个例子,运用exec()函数:
    var myStr = "I,love,you,Do,you,love,me";
    var pattern = /love/;
    var result = pattern .exec(myStr);//["love"]
    console.log(result .index);//2
    console.log(result.input );//I,love,you,Do,you,love,me
简朴吧,仅仅是把正则和字符串换了个位置,即exec()函数是在正则上挪用,通报字符串的参数。关于上面两个
要领,婚配的效果都是返回第一个婚配胜利的字符串,假如婚配失利则返回null.

再来看一个相似的要领search(),如:
var myStr = "I,love,you,Do,you,love,me";
var pattern = /love/;
var result = myStr.search(pattern);//2
仅返回查到的婚配的下标,假如婚配失利则返回-1.      
    原文作者:云霄阁主
    原文地址: https://segmentfault.com/a/1190000009792489
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞