2

多くのWebサイトはフォークソノミータグをサポートしています。「URLの最後のパスコンポーネントはタグのテキストです」と書かれているrel-tagについて聞いたことがあるかもしれません。

ブラウザで現在表示されているURLの「ラストパスコンポーネント」を取得し、そのタグを別のURLに追加して、新しいタブまたはウィンドウでそのページを開くためのブックマークレットまたはグリースモンキースクリプト(javascript)を探しています。

たとえば、「foo」というタグが付いたdelicious.comページを見ている場合、「foo」というタグが付いた新しいURLを作成したい場合があります。これは、 foo+barなどの最後のパスコンポーネントの複数のタグでも機能するはずです。

いくつかの正規表現の提案が提供されています。

4

3 に答える 3

4

JavaScript を使用しているため、ホスト名やクエリ文字列などについて心配する必要はありませんlocation.pathname。重要な部分を取得するために使用するだけです。

例えば:

var NewUrl = 'http://technorati.com/tag/';
var LastPart = location.pathname.match( /[^\/]+\/?$/ );
window.open( NewUrl + LastPart );

これにより、潜在的な単一の末尾のスラッシュが可能になります。

/[^\/]+\$/末尾のスラッシュを禁止するために、または/[^\/]+\/*$/任意の数のスラッシュを禁止するために使用できます。

于 2009-05-03T15:34:47.260 に答える
0

両方の URL が有効であると想定できる場合は、次の正規表現を使用して最初の URL からタグを取得できます。

^[a-z]+://[^/#?]+/[^#?]*?([^#?/]+)(?:[#?]|$)

最初の (そして唯一の) キャプチャ グループがタグを保持します。この正規表現は、タグのない URL には一致しません。

タグを別の URL に追加するには、正規表現を検索します。

^([^#?]*?)/?(?:[#?]|$)

次のように置き換えます。

$1/tag

この正規表現は、元の URL のパスがスラッシュで終わる場合、URL で 2 つの隣接するスラッシュにならないようにします。

于 2008-11-26T17:26:20.533 に答える
-1

サーバーのセットアップ方法のように、すべてのジャズを実装しますか?私はそのことについてあまり知識がありません=\ああ聞こえます

于 2009-11-09T14:25:33.423 に答える