字符串常用方法案例

it2025-10-02  8

字符串常用方法案例

1.和谐敏感字2.案例:计算各种类型字符在字符串中出现的次数3.统计一个字符在str中的个数4.字符串转数组 并获取其中的值5.arr =["Apple","orange","banana","red","blue"]; 查找这个数组中 包含A或a的字符串 的个数 (3)6.QQ号验证

1.和谐敏感字

1.replace方法 <textarea class="txt" name="" id="" cols="30" rows="10"></textarea> <p><button class="btn">留言</button></p> <div class="show"></div> <script> var txt = document.querySelector('.txt'); var btn = document.querySelector('.btn'); var show = document.querySelector('.show'); btn.onclick = function () { var val = txt.value; val = val.replace('马化腾', '###') show.innerText = val; } 2.正则方法 <textarea class="txt" name="" id="" cols="30" rows="10"></textarea> <p><button class="btn">留言</button></p> <div class="show"></div> <script> var txt = document.querySelector('.txt'); var btn = document.querySelector('.btn'); var show = document.querySelector('.show'); btn.onclick = function () { var val = txt.value; var reg = /马化腾|麻花|话话|腾讯/g;//正则 val = val.replace(reg, function (str) { var x = ''; for (var i in str) { x += '*' } return x; }) show.innerText = val; } </script>

2.案例:计算各种类型字符在字符串中出现的次数

方法1: var str = "ahG%%%Gmfsfs342s#$#%"; //各种类型:小写字母 大写字母 数组 特殊符号 function getCount(str) { var ch = ""; var xxCount = 0; var dxCount = 0; var numCount = 0; var otherCount = 0; //获取每一个字符 for (var i = 0; i < str.length; i++) { ch = str.charAt(i); //判断字符的种类 if (ch >= "a" && ch <= "z") { xxCount++; } else if (ch >= "A" && ch <= "Z") { dxCount++; } else if (ch >= "0" && ch <= "9") { numCount++; } else { otherCount++; } } console.log(xxCount, dxCount, numCount, otherCount);//8 2 3 7 } getCount(str);

3.统计一个字符在str中的个数

var str = "iyifaaaaAAAAw832646%%%"; str=str.toLowerCase(); var obj={}; for(var i=0;i<str.length;i++){ var letter=str[i];//单个字符 if(obj[letter]){ obj[letter]=obj[letter]+1; }else{ obj[letter]=1; } } console.log(obj); //输出结果 2: 1 3: 1 4: 1 6: 2 8: 1 %: 3 a: 8 f: 1 i: 2 w: 1 y: 1

4.字符串转数组 并获取其中的值

var str = "http://www.baidu.com?uname=lichune&pwd=123&age=19&phone=110"; //获取密码 var arr = str.split("&"); //将字符串变成数组 console.log(arr);// ["http://www.baidu.com?uname=lichune", "pwd=123", "age=19", "phone=110"] console.log(arr[1].split("=")[1]);//123 //获取所有等号后面的值 var search = str.split("?")[1].split("&"); //console.log(search); for (var i = 0; i < search.length; i++) { console.log(search[i].split("=")[1]); }

5.arr =[“Apple”,“orange”,“banana”,“red”,“blue”]; 查找这个数组中 包含A或a的字符串 的个数 (3)

var arr = ["Apple", "orange", "banana", "red", "blue"]; function fn(arr) { var count = 0; for (var i = 0; i < arr.length; i++) { if (arr[i].indexOf("a") != -1 || arr[i].includes("A")) { count++; } } console.log(count);//3 } fn(arr);

6.QQ号验证

要求: 1、有没有输入 2、输入的是不是数字 3、不能有0在前面 4、不能是小数 5、输入的数字必须在5位以上、10位以内

qqNum: <input id="qqNum" type="text"> <button id="checkQQ">验证</button> <script> var qqNum = document.getElementById('qqNum'); var checkQQ = document.getElementById('checkQQ'); //给checkQQ按钮绑定点击事件 checkQQ.onclick = function () { //qq验证 //获取用户输入的QQ号内容 var qqVal = qqNum.value; //前后空格去掉 qqVal = qqVal.trim(); //判断有没有输入 if (qqVal === "") { alert("qq号不能为空") } else if (isNaN(qqVal)) {//输入的不是数字 alert("必须是数字"); } else if (qqVal.charAt(0) === "0") {//0不能再前面 alert("首位不能为0"); } else if (qqVal.indexOf(".") != -1) {//不能是小数 alert("不能输入小数"); } else if (qqVal.length < 5 || qqVal.length > 10) {//输入数字为5-10为 alert("数字长度在5-10位"); } else { alert("可以使用"); } } </script>
最新回复(0)