了解类似的获取字符位置的方法:
charAt() 获取字符串指定位置的字符
用法:strObj是字符串对象,index是指定的位置,(位置从0开始数)
1
|
strObj.charAt(index)<br type= "_moz" > |
indexOf() 方法可返回某个指定的字符串值在字符串中首次出现的位置
用法:stringObject是字符串对象,searchvalue是指定的字符串值,fromindex(可有可无)指定开始匹配字符串值的位置,若无,表示从0位置开始。
1
|
stringObject.indexOf(searchvalue,fromindex) |
例如:
1
2
|
var str= 'helloworld' ; var num=str.indexOf( 'o' ); //返回4 |
正题
获取一个字符串值在指定字符串第n次出现的位置
就像上面的例子,helloword,我想获取第二个o出现的位置
js代码:参数(字符串,要查找的字符串值,要查找第几个该字符串值
1
2
3
4
5
6
7
|
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; } |
引用该方法:
1
2
|
ar str= "Hello World!" document.write(find(str, 'o' ,1)); //返回7 |
基本的用法就是这样了,对于一个字符串中相同字符多的字符串,只需要把相应的2换成你想要查找的n值就可以了
例如:获取当前页面url中的第n个‘/'出现的位置
直接调用上面的方法
1
2
|
ar str=document.URL; //获取当前页面的完整路径信息 document.write(find(str, '/' ,n)); |
到此这篇关于JS获取一个字符串中指定字符串第n次出现的位置的文章就介绍到这了,更多相关JS获取字符串中指定字符串第n次出现的位置内容请搜索服务器之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持服务器之家!
原文链接:https://www.cnblogs.com/jingmin/p/6528545.html