0

以下のケースでは、vars b & c の最初の "#" または "+" 文字を取り除く必要があります。これにより、他の場所で構築された新しい URL の文字列として使用される vars a & a1 になります。

コードは次のとおりです。

var b = "http://www.somewhere.com/search/#foo+bar+baz"

var c = "http://www.somewhere.com/search/++bar+baz"

var a = b.split("/")[4].split("+").slice(0, 1);
var a1 = c.split("/")[4].split("+").slice(0, 1);

これがフィドルです。

4

2 に答える 2

1

これはあなたのフィドルで私のために働きます。

var b = "http://www.somewhere.com/search/#foo+bar+baz"

var c = "http://www.somewhere.com/search/++bar+baz"

var a = b.split("/")[4].split("+").slice(0, 1);
if(a[0].indexOf('#') != -1){a = a[0].split('#')[1]}
var a1 = c.split("/")[4].split("+");
var i=0;
while(true){
    if(a1[i] != ''){a1 = a1[i]; break;}
    i++;
}
$("#result").html(a);
$("#result2").html(a1);

console.log(a);
console.log(a1);
于 2013-11-06T22:23:41.847 に答える
0

フィドルを更新しました

char の最初の出現を正規表現を使用して非常に簡単に置き換えることができます。

var a = b.replace(/[#+]/,'');
var a1 = c.replace(/[#+]/,'');

修飾子がないgと、最初に見つかったものだけが置き換えられます。

于 2013-11-06T22:10:43.137 に答える