开发者

preg_replace: remove tags

I have a lot of option tags. I would like to remove the tags and get only the values. This is the code:

<?php
$result = preg_replace('/<option value=\"\d+\"  >([A-Za-z0-9]+)<\/option>/', '$1', $result);
?>

I cannot use strip_tags, strip_t开发者_Python百科ags output:

id="pesq_marca" class="select164" size="1" onchange="exibeModelosSelectpesq_marca(this.value, 'C','','');" >SelecioneAUDIBMWCHEVROLETCITROENFIATFORDGMCHONDAHYUNDAIJEEPKIA MOTORSMERCEDES-BENZMITSUBISHINISSANPEUGEOTRENAULTSUZUKITOYOTAVOLKSWAGENADAMOAGRALEALFA ROMEOASIA MOTORSBRMBUGGYCADILLACCBTCHAMONIXCHANACHERYCHRYSLERDAEWOODAIHATSUDKWDODGEEFFAENGESAENVEMOFERRARIGURGELHAFEIHUMMERINFINITIIVECO-FIATJAGUARJINBEIJPXLADALAND ROVERLEXUSLIFAN MOTORSLINCOLNLOBINIMAHINDRAMASERATIMAZDAMERCURYMINIMIURAMPNEVIO BRENDLERPORSCHEPROTOTIPOPUMASATURNSEATSHELBYSIMCASMARTSSANGYONGSUBARUTROLLERVOLAREVOLVOWAYWILLYS

With this code, I get the content of $result and a lot of trash. What's wrong? Thank you.


Exactly your question has been asked before - see this post, it will definitely help you (including sample code):

Stackoverflow: "php regex to read select form"

The regex in question (from that post) is preg_match_all( '@(<option value="([^"]+)">([^<]+)<\/option>)@', $options, $arr);


$result = preg_replace('/<option.*?>([A-Za-z0-9]+)<\/option>/', '$1', $result);


Try this:

preg_match_all('/<option [^>]*?>(.*)<\/option>/', $text, $match);
print_r($match[1]);
0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜