我正在解析HTML字符串,但是有问题。我想使用正则表达式获取div
类的product__info__value
内部的值,而不要使用客户端DOM。
我尝试了以下代码:
$reg_ex = "<div[^<>]*class=\"my-class\"[^<>]*>[\s\S]*?</div>";
但是对我来说真的没有用。
这是html输入:
<div class="product__info__group">
<div class="product__info__name">Производитель</div>
<div class="product__info__value">Holzhof</div>
</div>
<div class="product__info__group">
<div class="product__info__name">Страна</div>
<div class="product__info__value"></div>
</div>
我需要数组形式的这些值:
Производитель, Holzhof, Страна
非常感谢您的帮助,非常感谢您的帮助!
答案 0 :(得分:0)
您可以将其分为三部分。名称/值前的部分,所需的实际名称/值以及名称/值后的部分。
product__info__(?:name|value)">
#标签的结尾(?:[^<]+)
#不属于任何可能的原因(?=<)
#带有开口角支架的傻瓜头全部放在一起,看起来像这样:
preg_match_all('~product__info__(?:name|value)">\K(?:[^<]+)(?=<)~', $string, $matches);