我正在编写一个网络刮刀程序,从雅虎金融,谷歌金融或纳斯达克提取股票报价。我可以得到包含股票价格的html元素,但是我只需要从结果中获得美元值。例如,示例输出如下所示:

我在这里使用一个图像,因为当我发布实际的html时,只有美元数量(期望的结果)出现,html实体和标记就消失了。这是我的密码

我对regEx不是很熟悉,但我试过了,但没有运气。如何从输出中只提取美元金额?
发布于 2015-05-19 03:56:02
尝试使用java.util.regex.Matcher和java.util.regex.Pattern
String pattern = "<td>\\$&.+;(\\d{1,4}\\.\\d{2})&";
Pattern p = Pattern.compile(pattern);
Matcher m = p.matcher(inputLine);
if (m.find( )) {
System.out.println("Price: $" + m.group(1) );
}结果:
价格:130.27美元.
示例:
http://ideone.com/fWgvL5#stdout
发布于 2015-05-19 03:26:38
str_replace会工作的。
看起来就像
$string = str_replace(' </td><td>.*?</td>',' </td>', $string);.*?将在没有 的标记之间与上面的代码匹配值。找到正确的分隔符。.*? or .*(?)等
然后,上面的代码将删除每个<td>number</td>标记,同时保留每个<td>$ number </td>。
你在哪里找到了如何收集实时金融数据?它在某个xml提要中吗?
https://stackoverflow.com/questions/30316124
复制相似问题