1、字符串的split方法
//1.拿到网址字符串的uname和psw
var url = "http://www.baidu.com?uname=zs&psw=123456";
var strone = url.split('?')[1];
console.log(strone);
var strtwo = strone.split('&');
console.log(strtwo);
var uname = strtwo[0].split('=')[1];
var password = strtwo[1].split('=')[1];
console.log('用户名:' + uname+';'+'密码:'+ password)
//字符串的split转化为数组的方法
var strone = 'helloworld';
console.log(strone.split());//['helloworld']
// 如果把空字符串 ("") 用作 separator,那么 stringObject 中的每个字符之间都会被分割。
console.log(strone.split(''));//['h','e','l','l','o','w','o','r','l','d'];
//若只需要返回一部分字符,请使用 howmany 参数:
console.log(strone.split('',3));//['h','e','l']
var strtwo = 'hello world';
console.log(strtwo.split(' '));//['hello','world'];
//与将数组转化为字符串方法相反
//2.将一段字符串反向输出
var strthree = 'abcde';
console.log(strthree.split('').reverse().join(''));
//转为数组reverse后再转化为字符串输出
2、charAt,charCodeAt,fromCharCode方法
// 1.字符串的charAt方法
var strone = 'helloworld';
console.log(strone.charAt(3));//l
//charAt(n) 返回位置n上的字符
//2.字符串的charCodeAt方法
console.log(strone.charCodeAt(3))//108
// charCodeAt(n) 返回位置n上的字符的unicode编码
//3.字符串的fromCharCode()方法
console.log(String.fromCharCode(108))//l
//String.fromCharCode(65); // 返回unicode编码对应的字符
3、indexOf、lastIndexOf方法
console.log(strone.indexOf('w'));//5
console.log(strone.indexOf('z'));//-1
// indexOf("字符") 从左到右在字符串中查到第一个符合的字符,找到就返回该位置,找不到返回-1
//5.字符串的lastIndexOf的方法
console.log(strone.lastIndexOf('l'));//8
console.log(strone.lastIndexOf('z'));//-1
// lastIndexOf("字符") 基本同上 只不过从后往前查找
4、substr,substring,slice方法
//6.字符串的substr,substring,slice的方法异同
console.log(strone.substr(1));//elloworld
console.log(strone.substr(1,3));//ell
// substr(num) 表示字符串从num这个位置一直截取到最后,原来字符串不变
//substr(num,length)
// 表示字符串从num这个位置截取length长度的字符串
console.log(strone.substring(1))//elloworld
console.log(strone.substring(1,3))//el
// substring(num)
//表示字符串从num这个位置一直截取到最后,原来字符串不变
//substring(from,to)
//表示字符串从from位置开始 截取到to这个位置 但是不包含to这个位置
console.log(strone.slice(1,3));//el
console.log(strone.slice(1));//elloworld
// slice是数组的方法,字符串也可使用,同substring
5、replace方法
//1. replace的方法
var strone = "你好 nnd 祝你快乐 nnd 再见";
console.log(strone.replace('nnd','xxx'))
//只会替换掉第一个
console.log(strone.split('nnd').join('xxx'));
//使用这种方法实现了全部替换
//此外也可以使用正则来匹配替换
6、toUpperCase,toLowerCase方法
var strtwo = 'asdVBHna'
console.log(strtwo.toUpperCase());
console.log(strtwo.toLowerCase());
查找某段字符串中某个每个字符出现的次数 字符串实例
//1. 查找一段字符串中的某个字符出现的次数
var strone = 'abdsdehdjfhjfhyrueh';
function strmany(strname,num){
var count = 0;
for(var i = 0;i<strname.length;i++){
if(strname.charAt(i) == num){
count++
}
}
return num+"出现了"+count+'次';
}
console.log(strmany(strone,'h'));
//2. 查找一段字符串当中每个字符出现的次数
var strtwo = "ahhf323hj5%#$Ab!2Uy";
function getStr(strname){
for(var code = 32;code<=127;code++){
var onestr = String.fromCharCode(code);
var count = 0;
for(var i = 0;i<strname.length;i++){
if(strname.charAt(i) == onestr){
count++;
}
}
if(count>0){
console.log('字符'+onestr+'出现了'+count+'次')
}
}
}
getStr(strtwo);
//常见的unicode的范围
// 汉字:[0x4e00,0x9fa5](或十进制[19968,40869])
// 数字:[0x30,0x39](或十进制[48, 57])
// 小写字母:[0x61,0x7a](或十进制[97, 122])
// 大写字母:[0x41,0x5a](或十进制[65, 90])
// 其他:除上所有
//3. 统计字符串中小写字母个数 大写字母个数 数字字符个数 其他字符的个数
var strlast = '12hdgf*7$#HFbg78987';
function getStrs(strname){
var small = 0;
var big = 0;
var num = 0;
var other = 0;
for(var i = 0;i<strname.length;i++){
if(strname.charAt(i)>='a' && strname.charAt(i)<='z'){
small++
}else if(strname.charAt(i)>='A'&&strname.charAt(i)<='Z'){
big++
}else if(strname.charAt(i)>='0' && strname.charAt(i)<='9'){
num++
}else{
other++
}
}
return '出现小写字母'+small+'个'+';'+'出现大写字母'+big+'个'+';'+'出现数字'+num+'个'+';'+'其他字符'+other+'个'+';'
}
console.log(getStrs(strlast))
网友评论