0

kwd 变量保存这个值: news path:".aspx" 它基本上是一个url的查询字符串。

  var path= "path:\".aspx\""; 

所以 kwd= 像这样 + 路径传递给 url 的任何用户类型:

kwd=news path:".aspx";

我需要减去 kwd-path,所以我只得到“新闻”我如何在 java-script 或 jquery 中做到这一点?

我知道我可以使用 trim 或 substring 或 substr .. 但我无法开始工作。我基本上使用这个逻辑:

if (b.startsWith(a)) {
        return b.subString(a.length());
    }

    if (b.endsWith(a)) {
        return b.subString(0, b.length() - a.length());
    }

但这不起作用..

 var persistvalue= kwd.subString(0, kwd.length() - path.length());
4

2 回答 2

0

kwd.length() - path.length()- 这个值不是负数吗?

尝试path.length() - kwd.length()

于 2012-04-05T20:21:34.210 回答
0

由于您.aspx在字符串中,因此您必须首先从字符串中提取它:

>>> 'an example:"some text"'.match(/"(.*)"/)[1]
"some text"

现在,如果字符串出现在末尾,您可以删除它:

function removeFromEnd(string, toRemove) {
    function literally(regexp) {
        regexp.replace(/./g, function(x){return '\\'+x})
    }
    yourString.replace(RegExp(literally(string)+'$'), '')
}

表示字符串的$结尾。或者,您可以通过以下方式更简单地执行此操作:

function removeFromEnd(string, toRemove) {
    if (string.slice(-toRemove.length)==toRemove)
        return string.slice(0, -toRemove.length);
    else
        return string
}
于 2012-04-05T20:24:10.027 回答