2025年1.4 字符串操作字符串:“abaasdffggghhjjkkgfddsssss3444343”,问题如下:1、 字符串的长度2、 取出指定位置的字符,如:0,3,5,9等3、 查找指定字符是

1.4 字符串操作字符串:“abaasdffggghhjjkkgfddsssss3444343”,问题如下:1、 字符串的长度2、 取出指定位置的字符,如:0,3,5,9等3、 查找指定字符是1 4 字符串操作 字符串 abaasdffgggh 问题如下 1 字符串的长度 2 取出指定位置的字符 如 0 3 5 9 等 3 查找指定字符是否在以上字符串中存在 如 i c b 等 4

大家好,我是讯享网,很高兴认识大家。
1.4 字符串操作 字符串:“abaasdffggghhjjkkgfddsssss”,问题如下: 1、 字符串的长度 2、 取出指定位置的字符,如:0,3,5,9等 3、 查找指定字符是否在以上字符串中存在,如:i,c ,b等 4、 替换指定的字符,如:g替换为22,ss替换为b等操作方法 5、 截取指定开始位置到结束位置的字符串,如:取得1-5的字符串 6、 找出以上字符串中出现次数最多的字符和出现的次数 7、 遍历字符串,并将遍历出的字符两头添加符号“@” 

讯享网
讯享网<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
1.4 字符串操作
字符串:“abaasdffggghhjjkkgfddsssss3444343”,问题如下:
1、 字符串的长度
2、 取出指定位置的字符,如:0,3,5,9等
3、 查找指定字符是否在以上字符串中存在,如:i,c ,b等
4、 替换指定的字符,如:g替换为22,ss替换为b等操作方法
5、 截取指定开始位置到结束位置的字符串,如:取得1-5的字符串
6、 找出以上字符串中出现次数最多的字符和出现的次数
7、 遍历字符串,并将遍历出的字符两头添加符号“@”

<script>
    var str = "abaasdffggghhjjkkgfddsssss3444343"
    console.log("abasdffggghhjjkkgfddsssss3444343")

    //1、 字符串的长度
    function getLength(arr) {
        console.log("1、 字符串的长度")
        var len = arr.length
        console.log(len)
        return len
    }

    getLength(str)

    //2、 取出指定位置的字符,如:0,3,5,9等
    function getByIndex(index, arr) {
        console.log("2、 取出指定位置的字符,如:0,3,5,9等")
        var ch = arr.charAt(index)
        console.log(ch)
        return ch
    }

    getByIndex(3, str)

    //3、 查找指定字符是否在以上字符串中存在,如:i,c ,b等
    function existStr(ch, str) {
        console.log("3、 查找指定字符是否在以上字符串中存在,如:i,c ,b等")
        var flag = str.indexOf(ch)
        console.log("若为-1意为不存在")
        console.log("开始下标:")
        console.log(flag)
        return flag
    }

    existStr("66", str)

    // 4、 替换指定的字符,如:g替换为22,ss替换为b等操作方法
    function change(before, after, str) {
        console.log("4、 替换指定的字符,如:g替换为22,ss替换为b等操作方法")

        var index = str.indexOf(before)//获取想要替换的字符的下标
        console.log(index)
        console.log(after)
        var len = before.length
        if (index != -1) {
            //sreplace()⽅法
            // 1 字符串.replace(被替换的字符串, 要替换为的字符串);
            str = str.replace(before, after)//ji将替换后的结果赋值给str
            console.log(str)
        } else {
            console.log("x想要替换的字符不存在")
        }
        return str
    }

    str = change("344", "666", str)

    // 5、 截取指定开始位置到结束位置的字符串,如:取得1-5的字符串
    function getStrByIndex(start, end, str) {
        console.log("5、 截取指定开始位置到结束位置的字符串,如:取得1-5的字符串")

        var newStr = str.slice(start, end)
        console.log(newStr)
        return newStr
    }

    getStrByIndex(0, 5, str)

    // 6、 找出以上字符串中出现次数最多的字符和出现的次数
    function maxTimes(str) {
        {
            console.log(str)
            console.log("6、 找出以上字符串中出现次数最多的字符和出现的次数")
            var arr=[]  //用来存储每个数出现的次数
            var num=0
            for (var j=0;j<str.length;j++){
                arr[j]=0
                var newStr=''  //x新字符串
                var newStrFirst=str.slice(0,j+1) //新字符串前半段
                var newStrBefore=str.slice(j+1,str.length) //新字符串前半段
                var newStrAfter=''  //新字符串后半段
                for (var i = 0; i < str.length; i++) {
                    num++
                    //slice(start,end)  从start位置开始,到end位置结束,
                    // 取不到end,他们都是索引号
                    newStrBefore=str.slice(j+1,str.length)

                    // console.log("新字符串前半段"+newStrFirst)
                    // console.log("新字符串后半段"+newStrBefore)

                    var ch=str.charAt(j)
                    // console.log("当前字符"+ch)

                    //replace()方法用于在字符串中替换字符
                    //str.replace(被替换的字符串,替换后字符串)
                    newStrAfter = newStrBefore.replace(ch, "")
                    if (newStrBefore != newStrAfter) {
                        //如果后半段修改前和修改后不一样,则替换新字符串
                        newStr=newStrFirst+newStrAfter
                        // console.log("新字符串"+newStr)
                        // console.log("新字符串长度"+newStr.length)

                        str = newStr
                        // console.log("删除后"+str)
                        i--
                        arr[j]++
                    } else {
                        console.log(str)
                    }
                }
            }
            console.log(arr)
                // [2, 0, 5, 2, 2, 3, 1, 1, 1, 2, 1, 1]
            console.log("总共运行次数:"+num)
            // 总共运行次数:264
            var max=arr[0]
            var index=0
            for (var i=0;i<str.length;i++){
                if (max<arr[i]){
                    max=arr[i]
                    index=i
                }
            }
            console.log("出现次数最多为:"+max)
            // 出现次数最多为:5
            console.log("去重后的字符串:"+str)
            // 去重后的字符串:absdfghjk643
            console.log("他在去重后的字符串中的下标:"+index)
            // 他在去重后的字符串中的下标:2
            console.log("该字符是:"+str.charAt(index))
        //    该字符是:s

        }
    }

    maxTimes(str)
    console.log(str)    //abaasdffggghhjjkkgfddsssss6664343

    // 7、 遍历字符串,并将遍历出的字符两头添加符号“@”
    console.log(" 7、 遍历字符串,并将遍历出的字符两头添加符号“@”")
    function addChar(str,ch){
        console.log("遍历前字符串:"+str)
        var newStr=''+ch
        for (var i=0;i<str.length;i++){
            newStr=newStr+str.charAt(i)+ch
        }
        console.log("遍历后字符串:"+newStr)
    //@a@b@a@a@s@d@f@f@g@g@g@h@h@j@j@k@k@g@f@d@d@s@s@s@s@s@6@6@6@4@3@4@3@
    }
    addChar(str,'@')
</script>
</body>
</html>


讯享网

小讯
上一篇 2025-02-07 19:09
下一篇 2025-04-08 18:33

相关推荐

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/32538.html