-1

このように、DOM本体内にさまざまな形式のテキストがあります

(min-width: 400px)
(max-width : 500px)
(min-width :600px)
( max-width:700px )

これらの形式から数字のみを検出し、それらを配列に返したい

私は試した

document.write($('body').text().match(/ *\([^)\d+]*\) */g, ""));

しかし、それは null を返します。私が間違っていることは何ですか?

ここにフィドルがあります:http://jsfiddle.net/gQHT2/1/

4

1 に答える 1

0

あなたができることは、次の正規表現を使用することです:

/\(\D*(\d+)px\s*\)/g

(これは、 、数値以外のガベージ、追加された数値自体、pxスペース、および末尾の に一致します)http://jsfiddle.net/gQHT2/9/を使用する()と、結果を個別に取得できるように、番号はグループ化されます ( で囲まれます) 。regexp.exec

$("body").html(function(i, html) {
    var regexp = /\(\D*(\d+)px\s*\)/g;
    var items = "";
    var current;
    while(current = regexp.exec(html)) {
        items += current[1] + "<br>";  // [0] is match, [1] is first group
    }
    return items;
});
于 2012-08-25T14:50:16.740 に答える