【发布时间】:2020-11-28 09:39:00
【问题描述】:
在我的 WordPress v5.5.3 中,我正在构建外部域的书签页面,并且我想从每个页面中识别一个具有特定文本作为值的元素,并捕获其下一个元素的值:
<html>
<div>
<ul class="list">
<li>
<span class="item">
<span class="list-item">Name</span>
<span>John</span>
</span>
</li>
<li>
<span class="item">
<span class="list-item">Age</span>
<span>25</span>
</span>
<li>
</ul>
<ul class="list">
<li>
<span class="item">
<span class="list-item">Brand</span>
<span>Honda</span>
</span>
</li>
<li>
<span class="item">
.....
</span>
<li>
</ul>
<ul class="list">
<li>
<span class="item">
<span class="list-item">City</span>
<span>New York</span>
</span>
</li>
<li>
....
<li>
</ul>
</div>
</html>
所有元素都没有唯一的类或 ID。
我想获取名称值(例如来自此页面的 John)并将其存储为变量,这将是 <span>Name</span> 的下一个元素并且是唯一元素。
使用 preg_match,如果有一个唯一的 ID,我会用:
preg_match('~<span id="name"[^>]*>(.*?)</span>~si', $url, $name);
$name = $name[0];
在上述场景中,我如何才能捕获值 John?
【问题讨论】:
标签: php regex preg-match