我想修剪一个包含一些javascript代码的字符串,可能还有其他一些编程语言散布在它中。
例如,我有这个字符串:
“var itemNumber = window.ebayItemID?window.ebayItemID:-1; function passpara(){return'& id = 831556& itembgcolor = 0x000066& bordercolor = 0x000006& storewindowbgcolor = 0xFFFFFF& toptextcolor = 0x000066& bottomtextcolor = 0x000066& ; stripcolor = 0x99BBDD&安培; auctionclosemessagecolor = 0x99BBDD&安培; emptyboxmessagecolor = 0x99BBDD&安培; buttovercolor = 0x99BBDD&安培; buttoutcolor = 0x99BBDD&安培; searchtitlecolor = 0x000066&安培; searchbuttbgcolor = 0x000066&安培; searchbutttextcolor = 0x000006&安培; searchbuttbordercolor = 0x000066&安培; itemhighlightcolor = 0xFFF000&安培; navbuttonactivecolor = 0xFFF000&安培; navbuttonoutlinecolor = 0XFFFFFF&安培; navbuttoninactivebgcolor = 0xFFF000& siteid = 123& cat = 112847& item ='+ itemNumber +'& baseurl ='+ escape(location.href.substring(0,location.href.lastIndexOf('/')+ 1));} function passparaSC(){return'& baseurl ='+ escape(location.href.substring(0,location.href.lastIndexOf('/')+ 1))+'& sitebaseurl = http://www.auctiva.com&tagNum=1'; XBOX CD经过清洁和测试,可以运行rfectly。你所看到的就是你得到的。拍卖结束后5天内付款。除非另有说明,否则我出售的所有文章都是二手文章。文章可能有一些被使用的痕迹(小划痕,变色,盒子中的额外折叠等)如果你有任何问题随时可以问,我会很高兴回答他们。如果你想要更多的图片,请告诉我我不负责邮政服务丢失的包裹.De cd is gereinigd en getest en werkt perfect。 Wat je ziet是wat je krijgt.Betaling binnen de 5 dagen na afloop van de veiling.Alle artikelen die ik verkoop zijn 2de hands tenzij anders beschreven。 De artikelen kunnen lichte gebruikssporen bevatten(kleine krasjes,verkleuringen,kreuken in het doosje,enz ...)Ik ben niet verantwoordelijk voor pakjes die verloren gaan of beschadigd worden tijdens de verzending。 Indien je nog vragen zou hebben stel ze me gerust。 Meer foto的op aanvraag.Le cdestnettoyéettesté©fonctionne parfaitement。 Ce que vous voyez est ce que vous allez recevoir。 Payer dans les 5 joursaprèslafin de la venteauxenchères。 Tous les文章que je vent,sontusagés sinonautrementdégreg。 Les articles peuvent avoir de痕迹d用法(petites rayures,dé着色,plusieurs plis danslaboîte等)Je ne suis pas负责pour des parquets perdus ou des parquets qui sont nuis par le facteur。付款方式:我接受银行转账和paypal付款。付款必须在拍卖结束后的5天内完成。运输:我将在全球发货。我总是结合多次购买。您的购买将在重新开始付款后48小时内发送。 “
显然,字符串上堆满了代码。有没有办法从开始到结束代码段修剪字符串?
我已经查看了strip_tags(),str_replace()和trim()函数。
非常感谢托马斯
编辑:
这就是我现在所拥有的。
$result_strip = strip_tags($result_strip, "<style>");
$substring = substr($result_strip, strpos($result_strip, "<style"), strpos($result_strip, "</style>") + 2);
$result_strip = str_replace($substring, " ", $result_strip);
$result_strip = str_replace(array("\t", "\r", "\n"), " ", $result_strip);
$result_strip = preg_replace('/<script\b[^>]*>(.*?)<\/script>/is', " ", $result_strip);
$result_strip = trim($result_strip);
$result_strip = str_replace(" ",' ',$result_strip);
$result_strip = str_replace("bsp;",' ',$result_strip);
$result_strip = trim($result_strip,chr(0xC2).chr(0xA0));
这会删除html和css等字符串以及&amp; sbnp;标签