3

特定の形式のURLのリンクを選択する必要があります。 sizzleを使用して、正規表現に対してリンクのhref属性を評価できますか?

たとえば、次のようなことができますか?

var arrayOfLinks = Sizzle('a[HREF=[0-9]+$]');

URLが数字で終わるページ上のすべてのリンクの配列を作成するには?

4

1 に答える 1

3

これを試してみてください。KobiがリンクしているjQuery正規表現セレクターをSizzleセレクター拡張機能に変換しようとしました。動作しているように見えますが、私はそれを多くのテストにかけていません。

Sizzle.selectors.filters.regex = function(elem, i, match){ 
    var matchParams = match[3].split(',', 2);
    var attr = matchParams[0];
    var pattern = matchParams[1];
    var regex = new RegExp(pattern.replace(/^\s+|\s+$/g,''), 'ig');
    return regex.test(elem.getAttribute(attr));
};

この場合、例は次のように記述されます。

var arrayOfLinks = Sizzle('a:regex(href,[0-9]+$)');
于 2010-11-11T21:10:58.487 に答える