Javascript 如何检测字符串“article/page/inc/3/4”在“/”的最后三个索引中是否有“inc”?
如何检测字符串是Javascript 如何检测字符串“article/page/inc/3/4”在“/”的最后三个索引中是否有“inc”?,javascript,jquery,string,Javascript,Jquery,String,如何检测字符串是article/page/inc/3/4在/的最后三个索引中的inc? 并获取上面示例的/的最后一秒索引是3 我有两个不同的字符串,1:'article/page/4',2:article/page/inc/3/4, 我可以得到1:'article/page/4'last string=4,如下所示: var current_path_fragment = 'article/page/4'; var last = current_path_fragment.substring
article/page/inc/3/4
在/
的最后三个索引中的inc
?并获取上面示例的
/
的最后一秒索引是3
我有两个不同的字符串,1:'article/page/4',2:article/page/inc/3/4
,我可以得到1:'article/page/4'last string=4,如下所示:
var current_path_fragment = 'article/page/4';
var last = current_path_fragment.substring(current_path_fragment.lastIndexOf('/')+1);
我试图找到如何检测字符串是否有
inc
,并获取第二个字符串3
您可以使用以下正则表达式
/^([^/]+)*\/([^/]+)*\/inc\/([^/]+)*\/([^/]+)*/
那么完整的代码将是
var regex = /^([^/]+)*\/([^/]+)*\/inc\/([^/]+)*\/([^/]+)*/;
var input = "your input string";
if(regex.test(input)) {
var match = input.match(regex);
alert(match); // Then you will have all the data you want in the match array
} else {
alert("No matches found!");
}
检查match
变量,然后检索所需的所有数据
您可以使用以下
正则表达式
/^([^/]+)*\/([^/]+)*\/inc\/([^/]+)*\/([^/]+)*/
那么完整的代码将是
var regex = /^([^/]+)*\/([^/]+)*\/inc\/([^/]+)*\/([^/]+)*/;
var input = "your input string";
if(regex.test(input)) {
var match = input.match(regex);
alert(match); // Then you will have all the data you want in the match array
} else {
alert("No matches found!");
}
检查match
变量,然后检索所需的所有数据
字符串
如果s
是article/page/inc/3/4
s.split('/')
给出一个包含五个元素的数组文章
,页面
,公司
,3和4
当这个数组
var elements = s.split('/').reverse();
元素[0]
将有最后一段(4
,在您的情况下),元素[1]
将有最后一段的第二段(3
,在您的情况下),依此类推。字符串
如果s
是article/page/inc/3/4
s.split('/')
给出一个包含五个元素的数组文章
,页面
,公司
,3和4
当这个数组
var elements = s.split('/').reverse();
元素[0]
将有最后一段(4
,在您的情况下),元素[1]
将有最后一段的第二段(3
,在您的情况下),依此类推。这将检查字符串是否包含inc,如果包含它,它将给出字符串的最后一部分
var current_path_fragment = 'article/page/4';
if(current_path_fragment.indexOf("inc")){
var splittedString= current_path_fragment.split('/').reverse();
var secondLastPart= splittedString[1];
}
这将检查字符串是否包含inc,如果包含它,它将给出字符串的第二个最后部分
var current_path_fragment = 'article/page/4';
if(current_path_fragment.indexOf("inc")){
var splittedString= current_path_fragment.split('/').reverse();
var secondLastPart= splittedString[1];
}
另一种方法是利用和
例如,要查看字符串是否包含inc
,可以检查'yourstring'.indexOf('inc')>=0
——如果是,则字符串中包含inc
。此外,如果字符串包含inc
,则您已经知道在字符串中从何处开始搜索下一个元素
var s = 'article/something/inc/3/4';
incidx = s.indexOf('inc');
if (incidx >= 0) {
// 'inc' starts at incidx, so the next element starts at incidx+4. Get it!
result = s.substr(incidx+4, s.indexOf('/', incidx+4));
} else {
// no 'inc' in s, get last element.
result = s.substr(s.lastIndexOf('/'));
}
另一种方法是利用和
例如,要查看字符串是否包含inc
,可以检查'yourstring'.indexOf('inc')>=0
——如果是,则字符串中包含inc
。此外,如果字符串包含inc
,则您已经知道在字符串中从何处开始搜索下一个元素
var s = 'article/something/inc/3/4';
incidx = s.indexOf('inc');
if (incidx >= 0) {
// 'inc' starts at incidx, so the next element starts at incidx+4. Get it!
result = s.substr(incidx+4, s.indexOf('/', incidx+4));
} else {
// no 'inc' in s, get last element.
result = s.substr(s.lastIndexOf('/'));
}
@Tomas Lycken我有一个非常有用的正则表达式测试网站:)@Tomas Lycken我有一个非常有用的正则表达式测试网站:)