Php 如何使用preg_match提取特定数据?
我希望从一大堆html中提取值(我刚刚精简到相关数据),有多个“select”元素,只想提取那些“name”元素与“aMembers”名称匹配的元素。因此,我想要检索的结果值是5、10、25和30(见下文)。如何使用preg_match实现这一点Php 如何使用preg_match提取特定数据?,php,preg-match,Php,Preg Match,我希望从一大堆html中提取值(我刚刚精简到相关数据),有多个“select”元素,只想提取那些“name”元素与“aMembers”名称匹配的元素。因此,我想要检索的结果值是5、10、25和30(见下文)。如何使用preg_match实现这一点 <DIV id="searchM" class="search"><select name="aMembers" id="aMembers" tabIndex="2"> <option selected="
<DIV id="searchM" class="search"><select name="aMembers" id="aMembers" tabIndex="2">
<option selected="selected" value="">Data 3</option>
<option value="5">A name</option>
<option value="10">Another name</option>
</select>
</DIV>
<DIV id="searchM" class="search"><select name="bMembers" id="bMembers" tabIndex="2">
<option selected="selected" value="">Data 2</option>
<option value="15">A name</option>
<option value="20">Another name</option>
</select>
</DIV>
<DIV id="searchM" class="search"><select name="aMembers" id="Members" tabIndex="2">
<option selected="selected" value="">Data 1</option>
<option value="25">A name</option>
<option value="30">Another name</option>
</select>
</DIV>
数据3
名字
另一个名字
数据2
名字
另一个名字
数据1
名字
另一个名字
我将尝试将此任务分为两个步骤:
$str = 'your HTML code here...';
preg_match_all('|<select name="aMembers".*?</select>|ms', $str, $matches);
foreach ($matches[0] as $select) {
preg_match_all('|value="(.+?)"|', $select, $matches2);
var_dump($matches2[1]);
}
$str='您的HTML代码在此…';
预赛|