2012-02-09 4 views
0

私はこのフォーマットで一貫されるURLを持っている:jqueryを使ってURL内の単語をつかむ?

http://www.name.com/heart/game/2012/topics/SOMETHINGHERE.html

私はトピックの後に「SOMETHINGHERE」をつかむ/および変数としてそれを使用する必要があります。私は現在のURLを得ることができます:

var currentUrl = $(location).attr('href'); 

どのようにターゲットを絞って "SOMETHINGHERE"の部分を得るのか分かりませんか?

答えて

0

スプリットスラッシュをもとにして、URLの最後の部分の端からの.htmlを削除する部品へのURL:

var currentUrl = $(location).attr('href'); 
var urlParts = currentUrl.split("/"); 

var something = urlParts[urlParts.length-1].substr(0, urlParts[urlParts.length-1].lastIndexOf(".html")); 
0

あなたはURLの構造に依存していることができれば、あなたが使用することができます正規表現:

var pathname = location.pathname; // '/heart/game/2012/topics/SOMETHINGHERE.html' 
pathname.match(/\/topics\/([a-zA-Z0-9]+)\.html/)[1]; // 'SOMETHINGHERE' 

このURLパターンに一致しないページにエラーを投げないようにするには、the .match() trickを使用することができます。

var pathname = location.pathname; // '/some/url/that/doesnt/match/this/pattern.html' 
(pathname.match(/\/topics\/([a-zA-Z0-9]+)\.html/) || [, ''])[1]; // '' 

$(location).attr('href')を使用しないでください。代わりにlocation.hrefを使用してください。この場合、スキームやドメイン名はまったく必要ないので、location.pathnameを使用します。