草庐IT

remove_all

全部标签

PHP:Preg_match_all 将 html 提取到字符串中

我有这样的html:Tagged:sports,entertain,funny,comedy,automobile,moretags.如何将运动、娱乐、搞笑、喜剧、汽车提取到字符串中我的phppreg_match_all看起来像这样:preg_match_all('/(.*?),/',$this->page,$matches);echovar_dump($matches);echoimplode('',$tags);它不起作用。 最佳答案 我不确定您是如何从中获取$this->page的,但是以下内容应该会如您所料:http://i

php - HTML 净化器 : Removing an element conditionally based on its attributes

根据theHTMLPurifiersmoketest,“格式错误”的URI有时会被丢弃以留下无属性的anchor标记,例如XSS变成XSS...以及偶尔被剥离到协议(protocol)中,例如XSS变成XSS虽然这本身没有问题,但有点难看。我没有尝试用正则表达式去除这些,而是​​希望使用HTMLPurifier自己的库功能/注入(inject)器/插件/whathaveyou。引用点:处理属性在HTMLPurifier中有条件地删除一个attribute很容易。这里图书馆提供类(class)HTMLPurifier_AttrTransform使用方法confiscateAttr().虽

PHP Dom 文档 html 更快还是 preg_match_all 函数更快?

我有一个疑问,哪个处理速度更快?domdocumentorpreg_match_allwithcurlfunctionisfasterinhtmlpageparsing??dom文档功能会像curl功能一样在其他服务器上留下痕迹吗?例如,在curl函数中,我们使用用户代理来定义谁在访问,但在dom文档中什么都没有。 最佳答案 如果结果不正确,哪个更快重要吗?与正则表达式匹配以从文档中获取一点数据比解析整个HTML文档要快。但正则表达式无法在所有情况下正确解析HTML。参见http://htmlparsing.com/regexes.

PHP 简单 XML : Remove items with for

我可以使用以下方法从simpleXML元素中删除一个项目:unset($this->simpleXML->channel->item[0]);但我不能用afor:$items=$this->simpleXML->xpath('/rss/channel/item');for($i=count($items);$i>$itemsNumber;$i--){unset($items[$i-1]);}某些项目已从$items中删除(NetbeansDebug可以确认这一点)但是当我再次获取路径时(/rss/channel/item)没有任何内容被删除。怎么了? 最佳答

php - Google Maps V3 Zoom to Show all markers 不工作

我正在使用GoogleMapsV3API,在map上创建多个标记后,我很难让map缩小以显示所有标记。现在下面的代码只显示标记而不调整缩放。你能找到那里的错误吗?谢谢!functioninitialize(){varlatlng=newgoogle.maps.LatLng(1.289566,103.847267);varoptions={zoom:15,center:latlng,mapTypeId:google.maps.MapTypeId.ROADMAP,scrollwheel:false};varmap=newgoogle.maps.Map(document.getElement

php - 为什么 preg_match_all 强制我提供第三个可选参数?

按照目前的情况,这个问题不适合我们的问答形式。我们希望答案得到事实、引用或专业知识的支持,但这个问题可能会引发辩论、争论、投票或扩展讨论。如果您觉得这个问题可以改进并可能重新打开,visitthehelpcenter指导。关闭10年前。我正在计算$text中一些特殊字符的数量(如欧元符号),使用preg_match_all和这个正则表达式:preg_match_all('/[\[|\]|€\{|}|\\|\^|\||~]/u',$text);出于某种奇怪的原因,PHP要求我提供第三个参数。但根据documentationofpreg_match_all它应该是可选的:Warning:p

php - preg_match_all 如何获得*所有*组合?甚至重叠的

PHP正则表达式函数中是否有一种方法可以获取正则表达式的所有可能匹配项即使这些匹配项重叠?例如获取所有的3位子字符串'/[\d]{3}/'...您可能希望获得:"123456"=>['123','234','345','456']但是preg_match_all()只返回['123','456']这是因为它在匹配的子字符串之后再次开始搜索(如文档中所述):"Afterthefirstmatchisfound,thesubsequentsearchesarecontinuedonfromendofthelastmatch.".有没有不用编写自定义解析器就可以解决这个问题的方法?

php - 了解 preg_match_all() 函数调用中的模式

我试图了解preg_match_all()的工作原理,在查看php.net站点上的文档时,我看到了一些示例,但对作为模式参数发送的字符串感到困惑。那里有真正彻底,明确的解释吗?例如,我不明白这个例子中的模式是什么意思:preg_match_all("/\(?(\d{3})?\)?(?(1)[\-\s])\d{3}-\d{4}/x","Call555-1212or1-800-555-1212",$phones);或者这个:$html="boldtextclickme";preg_match_all("/(]*>)(.*?)()/",$html,$matches,PREG_SET_ORDE

php - WooCommerce 'remove_action' 在 'init' Hook 中不起作用

我正在尝试修改WooCommerce产品过滤器插件以将过滤器添加为而不是"col-md-6".在functions.php中,我删除了Hook到创建col-md-6的函数的操作。,编写了创建row的新函数s,并添加了与我的新功能Hook的操作。请参阅下面的代码。functionfilter_styling(){echo'';}functionfilter_styling2(){echo'';}functionproduct_category_filter_changes(){remove_action('woocommerce_before_main_content','oxy_bef

php - 如何删除 php 中的单行注释(例如 "//remove this comment")?

我想使用正则表达式从我的代码中删除所有单行注释(例如//comments)。到目前为止,我正在使用:preg_replace('/\/\/(.*)/','',$html);但它也会删除像http这样的字符串://example.com. 最佳答案 也许更好的方法是使用PHP引擎本身,也许使用token_get_all().该函数会将PHP脚本标记化,因此您可以完全按照PHP查看它的方式查看它,从而删除或替换注释。单独使用正则表达式执行此操作充其量只是一场噩梦,而且很可能根本不可能。 关于