$str = '<a href="javascript:void(0)" class="a-button-text" role="button" id="a-autoid-5-announce">
<span>平装</span> <br>
<span class="a-color-base">
<span class="a-color-price">
¥17.50
</span>
</span>
</a>';
$str = str_replace(PHP_EOL, '', str_replace(' ', '', $str));
$pattern = '/(<a.*?price">)(.*?)(<\/span>.*)/s';
$result = preg_replace($pattern, '${2}', $str);
return $result;
拿走不谢
$(function(){
var html = $('#a-autoid-5-announce span[class="a-color-price"]').html();
alert(html);
});
用正则匹配 页面是抓取过来的
我想问你是通过什么语言来找,但是基本思路都是先把整个html先抓取过来,然后在分析html(正则),当然你可以通过不同语言的第三方库来解析,如果你是通过c#来处理,我这边有一个很好的解决方案
第一步:把这段html中的空格全部去掉
第二部:正则匹配, 看代码
string pattern = "\"a-color-price\">(.*?)<"; string money = Regex.Match("处理后的html",pattern).Groups[1].Value;
C# 正则表达式 (?<=class="a-color-price">\s*)¥[\d.]*(?=\s*</span>)