0

我有一个 JavaScript 字符串sentrptg2c#appqueue#sentrptg2c#vwemployees#

我想vwemployees通过 RegExp 或任何 JavaScript 函数获取最后一个字符串。

请建议一种在 JavaScript 中执行此操作的方法。

4

5 回答 5

2

您可以使用以下split功能

var str = "sentrptg2c#appqueue#sentrptg2c#vwemployees#";
str = str.split("#");
str = str[str.length-2];
alert(str);

// Output: vwemployees

的原因-2是因为尾随#。如果没有尾随#,那就是-1

这是一个JSFiddle

于 2013-04-30T06:17:35.820 回答
0

没有神奇的数字:

var str = "sentrptg2c#appqueue#sentrptg2c#vwemployees#";
var ar = [];
ar = str.split('#');
ar.pop();
var o = ar.pop();
alert(o);

jsfiddle 示例

于 2013-04-30T06:41:24.220 回答
0
var s = "...#value#";
var re = /#([^#]+)#^/;
var answer = re.match(s)[1] || null;
于 2013-04-30T06:17:20.973 回答
0

如果您确定字符串将用“#”分隔,那么您可以在 # 上拆分并获取最后一个条目...我将在拆分字符串之前剥离最后一个 #,如果它在那里。

var initialString = "sentrptg2c#appqueue#sentrptg2c#vwemployees#"
var parts = initialString.replace(/\#$/,"").split("#"); //this produces an array

if(parts.length > 0){
  var result = parts[parts.length-1];
}
于 2013-04-30T06:19:31.037 回答
0

尝试这样的事情

String.prototype.between = function(prefix, suffix) {
  s = this;
  var i = s.indexOf(prefix);
  if (i >= 0) {
    s = s.substring(i + prefix.length);
  }
  else {
    return '';
  }
  if (suffix) {
    i = s.indexOf(suffix);
    if (i >= 0) {
      s = s.substring(0, i);
    }
    else {
      return '';
    }
  }
  return s;
}
于 2013-04-30T06:19:33.150 回答