減算

2012-04-05 20 views
0

KWD変数がこの値を保持しているJavaScriptで二つの文字列:ニュースパス:「ASPX」 は、基本的には、URLのクエリ文字列です。減算

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

この+パスのようなURLに渡されたのでKWD =どんなユーザーのタイプ:

kwd=news path:".aspx"; 

私は唯一の「ニュース」 私がいることをどのように行うのですかを得るようKWD-パスを減算する必要がありますJavaスクリプトまたはjquery?

私はトリムまたは部分文字列または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()); 
+1

空の文字列で置き換えることはできますか? 'b.replace(a、' ');' –

答えて

0

kwd.length() - path.length() ..働いていない - この値は負ではないでしょうか?あなたの.aspxが文字列の内部にあるので

path.length() - kwd.length()

0

を試してみてください、あなたは最初の文字列からそれを抽出する必要があります:それは最後に表示される場合

>>> '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 
}