JavaScript在另一个字符串中获取字符串的最后一个字符位置

时间:2016-06-24 13:05:40

标签: javascript

我认为问题非常随意,但无法找到解决方案。

我有一个字符串

var full = 'hopaopGmailb3GkI'
var name = 'hopaop'
var service = 'Gmail'

如何从原始字符串中获取b3GkI ,假设名称和服务是动态值,也是从字符串var full解析的。

如何获取service字符串

中变量var full的最后一个字符的索引

我需要获取service字符串中变量var full的最后一个字符的索引。 var index = full.indexOf(service);返回第一个字符的索引(本例中为6)。出于某种原因,我也不能从字符串中排除名称+服务。

3 个答案:

答案 0 :(得分:2)

var index = full.indexOf(service) + service.length;应该做到这一点。我也觉得你可以想出一个正则表达式来完成这个,但我不是主人。

答案 1 :(得分:1)

版本1

var full = 'hopaopGmailb3GkI';
var name = 'hopaop';
var service = 'Gmail';
var result = full.substring(full.indexOf(service) + service.length)
console.log(result);

第2版

您可以使用Split

var full = 'hopaopGmailb3GkI';
var name = 'hopaop';
var service = 'Gmail';
var result = full.split(service)[1];
console.log(result);

答案 2 :(得分:1)

使用正则表达式的另一种选择

var full = 'hopaopGmailb3GkI';
var service = 'Gmail';

console.log((function(source, service) {
    var match = new RegExp('(.+)' + service + '(.+)').exec(source);
    return {
        'service': service,
        'name': match[1],
        'token': match[2]
    };
})(full, service));

返回{"service":"Gmail","name":"hopaop","token":"b3GkI"}

之类的对象