了解类似的获取字符位置的方法:
charAt() 获取字符串指定位置的字符
用法:strObj是字符串对象,index是指定的位置,(位置从0开始数)
strObj.charAt(index)
indexOf() 方法可返回某个指定的字符串值在字符串中首次出现的位置
用法:stringObject是字符串对象,searchvalue是指定的字符串值,fromindex(可有可无)指定开始匹配字符串值的位置,若无,表示从0位置开始。
stringObject.indexOf(searchvalue,fromindex)
例如:
var str='helloworld'; var num=str.indexOf('o');//返回4
正题
获取一个字符串值在指定字符串第n次出现的位置
就像上面的例子,helloword,我想获取第二个o出现的位置
js代码:参数(字符串,要查找的字符串值,要查找第几个该字符串值
function find(str,cha,num){ var x=str.indexOf(cha); for(var i=0;i<num;i++){ x=str.indexOf(cha,x+1); } return x; }
引用该方法:
ar str="Hello World!" document.write(find(str,'o',1));//返回7
基本的用法就是这样了,对于一个字符串中相同字符多的字符串,只需要把相应的2换成你想要查找的n值就可以了
例如:获取当前页面url中的第n个‘/'出现的位置
直接调用上面的方法
ar str=document.URL;//获取当前页面的完整路径信息 document.write(find(str,'/',n));