首页 > 代码库 > Js 字符串的三大操作

Js 字符串的三大操作

回顾:

var num = str.length:字符个数

str = str.toLowerCase()/toUpperCase()

var char = str.charAt(index)  :指定位置的字符

var code = str.charCodeAt(index):指定位置的字符的unicode编码

字符串三大操作:

1.查找关键字

2.替换关机子

3.获取子字符串

查找关键字:var index = str.indexOf("关键字");

      返回关键字所在位置!****如果没找到  返回-1**

indexOf:懒:只找第一个关键字位置!

      蠢:默认只能从位置0开始~

var index = str.indexOf("关键字",from);

from:开始查找的位置   从from开始向后查找,

<!DOCTYPE HTML>
<html lang="en-US">
<head>
    <meta charset="UTF-8">
    <title></title>
</head>
<body>
    <script type="text/javascript">
        var str="女神说要来,我草草的收拾了房间。他又说不来了。我说:我草";
        var index=-1;  //从上次找到的位置开始
        while((index=str.indexOf("我草",index+1))!=-1){
            console.log("位置"+index+"发现关键字"); // 位置6发现关键字 位置26发现关键字
        }
    </script>
</body>
</html>

从最后一个字符,向前找:只要关键字离结尾近 ,就用last

var index = str.lastIndexOf("关键字",from);

from:开始查找的位置   从from开始 向前查找

返回的Index完全相同~   字符在数组中的下标是固定的!

2处修改:index从str.length开始;每次index要-1;

<!DOCTYPE HTML>
<html lang="en-US">
<head>
    <meta charset="UTF-8">
    <title></title>
</head>
<body>
    <script type="text/javascript"> 
        var str="女神说要来,我草草的收拾了房间。他又说不来了。我说:我草";
        var index=str.length;  //从上次找到的位置开始
        while((index=str.lastIndexOf("我草",index-1))!=-1){
            console.log("位置"+index+"发现关键字")     // 位置26发现关键字  位置6发现关键字
        }
    </script>
</body>
</html>

 

2、获取子字符串:var subStr = str.slice(start,end);      //含头不含尾  要在获取的最后一位再加1

          str.substring(start,end+1) 用法同slice~           

    唯一差别:不支持负值作为参数!

         str.substr(start,count)

以上三种方法省略第二个参数,默认都是取到结尾。

按规律分割字符串:var subs = str.split(“分割符”[,count]);   //返回切割后的数组

实例:

把字符串中的首字母变大写:

<!DOCTYPE HTML>
<html lang="en-US">
<head>
    <meta charset="UTF-8">
    <title></title>
</head>
<body>
    <script type="text/javascript"> 
        var str="no zuo no die";
        var words=str.split(" ");
        console.log(words);   //["no", "zuo", "no", "die"]
        for(var i=0; i<words.length; i++){
            //取每个单词元素的首字母大写
            //拼第二个字母之后的所有字符
            words[i]=words[i][0].toUpperCase()+words[i].substring(1);
        }        
        console.log(words);  //["No", "Zuo", "No", "Die"]
        var newwords=words.join(" ");
        console.log(newwords); //No Zuo No Die
    </script>
</body>
</html>

 

Js 字符串的三大操作