正規表現について

[code]

      li id="result_0" data-hoge="4592105095" class="s-result-item"
    
[/code]

[code]

    4592105095
    
[/code]

answerがこうなるようにしたい  
よろしくお願いします。




言語の指定がなかったため、JavaScriptを使って回答いたします（他言語でも表現が異なるだけで同様の考え方となります）。

[code]

    var regexp = new RegExp('data-hoge="(.*?)"');
    var result = regexp.exec('li id="result_0" data-hoge="4592105095" class="s-result-item"');
    alert(result[1]);
    
[/code]

マッチした値を取り出すために()を使います。()で囲んだ値はその()の個数分、結果の配列に1から順に入っていきます。今回は1つだけなのでインデックス1に入っています。

また正規表現の最短一致を使う必要があります。そのために(.*?)の?をつけています。?がないと、`4592105095" class="s-result-
item`という結果となります。これは最後の「"」まで一致させてしまうためです。?を使うことで表現に最短で一致するものにマッチさせることができます。

