0

プレグマッチを使ってピック

<table align='center' id='tbl_currency'> <tr> <span class=bld>631.0075 米ドル</span>

この番号と通貨を選択したいだけです 631.0075 USD

この数値と通貨は動的です。

出来ますか 、

4

2 に答える 2

1

決して正規表現を使用せず、常にパーサーを使用してください:

$htmlfragment = "<table align='center' id='tbl_currency'> <tr> <td><span class=bld>631.0075 USD</span></td></tr></table>";

$domdoc = new DomDocument();
$domdoc->loadHTML($htmlfragment);

$xpath = new DOMXPath($domdoc);
$result = $xpath->query("//table[@id='tbl_currency']//span[@class='bld']");

if ($result->length > 0) {
  $currency_span = $result->item(0);
  print $currency_span->nodeValue;
} else {
  print "nothing found";
}

版画

631.0075 USD

それを関数にラップすれば、準備完了です。

これまで XPath を使用したことがない場合は、XPath チュートリアルをざっと読んでみるとよいでしょう。

于 2010-07-02T14:00:00.520 に答える
0

正規表現を使用して HTML ソースからデータを抽出することは、stackoverflow で眉をひそめられます。このタスクには html パーサー ( SimpleHTMLDom など) の使用を検討してください。

これを一度やりたいのなら、素早く非常に汚い場合は、次のようなものでうまくいくかもしれません

"<span class=bld>([^<]*)</span>"

これは、関心のあるすべての通貨値のみが span タグに含まれており、class bld があり、他の属性がないことを前提としています。

于 2010-07-02T13:24:34.743 に答える