我有很多选项标签。我想删除标签,只获取值。 这是代码:
<?php
$result = preg_replace('/<option value=\"\d+\" >([A-Za-z0-9]+)<\/option>/', '$1', $result);
?>
我不能使用strip_tags,strip_tags输出:
id="pesq_marca" class="select164" size="1" onchange="exibeModelosSelectpesq_marca(this.value, 'C','','');" >SelecioneAUDIBMWCHEVROLETCITROENFIATFORDGMCHONDAHYUNDAIJEEPKIA MOTORSMERCEDES-BENZMITSUBISHINISSANPEUGEOTRENAULTSUZUKITOYOTAVOLKSWAGENADAMOAGRALEALFA ROMEOASIA MOTORSBRMBUGGYCADILLACCBTCHAMONIXCHANACHERYCHRYSLERDAEWOODAIHATSUDKWDODGEEFFAENGESAENVEMOFERRARIGURGELHAFEIHUMMERINFINITIIVECO-FIATJAGUARJINBEIJPXLADALAND ROVERLEXUSLIFAN MOTORSLINCOLNLOBINIMAHINDRAMASERATIMAZDAMERCURYMINIMIURAMPNEVIO BRENDLERPORSCHEPROTOTIPOPUMASATURNSEATSHELBYSIMCASMARTSSANGYONGSUBARUTROLLERVOLAREVOLVOWAYWILLYS
使用此代码,我获得了$ result和大量垃圾的内容。怎么了? 谢谢。
答案 0 :(得分:1)
之前已经问过你的问题 - 看到这篇文章,它肯定会对你有帮助(包括示例代码):
Stackoverflow: "php regex to read select form"
有问题的正则表达式(来自该帖子)是preg_match_all( '@(<option value="([^"]+)">([^<]+)<\/option>)@', $options, $arr);
答案 1 :(得分:1)
$result = preg_replace('/<option.*?>([A-Za-z0-9]+)<\/option>/', '$1', $result);
答案 2 :(得分:0)
试试这个:
preg_match_all('/<option [^>]*?>(.*)<\/option>/', $text, $match);
print_r($match[1]);