草庐IT

php - 使用正则表达式和 php 删除除 Internet Explorer 评论之外的所有 html 评论

我是正则表达式的新手,但需要一个代码来删除所有html注释(),但不删除InternetExplorer注释,如(here)。我有这段代码:369","#?#",$text);//replaceallthenormalhtmlcomments$text=preg_replace('//g','',$&text);//returninternetexplorercommentstagstotheirorigialplace$text=preg_replace("@#\?#@","",$text);return$text;}?>请帮忙。 最佳答案

php - str_replace + 正则表达式

我有:http://stackoverflow.com/questions/43242&cat=aa&id=342342http://stackoverflow.com/questions/43242&cat=aa&body=434&id=232http://stackoverflow.com/questions/43242&cat=aa&call=2323&id=14143434我想收到:这个没有参数id的链接:http://stackoverflow.com/questions/43242&cat=aahttp://stackoverflow.com/questions/43242

php - 将反引号转换为 '<code>' 和 '</code>' 的最简单方法是什么?

使这个PHP函数使每个其他反引号成为开始和结束HTML标记的最简单方法是什么,以便:'inforloops,use`$index`for0-nvaluesand`$count`for1-nvalues'变成:'inforloops,use$indexfor0-nvaluesand$countfor1-nvalues'例如$line='inforloops,use`$index`for0-nvaluesand`$count`for1-nvalues';echogetFormattedLine($line);functiongetFormattedLine($line){return$li

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:意外的 PREG_BACKTRACK_LIMIT_ERROR

functionrecursiveSplit($string,$layer){$err=preg_match_all("/\{(([^{}]*|(?R))*)\}/",$string,$matches);echo"Elementitrovati:$err";if($err==FALSE)echo"preg_match_allERROR";//iteratethrumatchesandcontinuerecursivesplitif(count($matches)>1){for($i=0;$i0){echo"Layer".$layer.":".$matches[1][$i]."";rec

PHP-preg_match()

好的,所以我希望用户能够输入A-Z中的每个字符和0-9中的每个数字,但我不希望他们输入“特殊字符”。代码:if(preg_match("/^[a-zA-Z0-9]$/",$user_name)){#Stuff}它如何检查所有给定的字符,然后检查它们是否匹配?我已经尝试过preg_match_all(),但老实说我并没有真正理解其中的大部分内容。就像用户输入“FaiL65Mal”一样,我希望它允许并继续。但如果他们输入“Fail{]^7(,,”,我希望它显示错误。 最佳答案 你只需要在你的正则表达式中有一个量词:零个或多个字符*:/^

PHP-REGEX : accented letters matches non-accented ones, 反之亦然。如何做到这一点?

我想做典型的高亮代码。所以我有类似的东西:$valor=preg_replace("/(".$_REQUEST['txt_search'].")/iu","\\1",$valor);现在,请求词可能类似于“josé”。有了它,我还想突出显示“jose”或“JOSÉ”或“José”等。对于这个表达式,如果我写“josé”,它会匹配“josé”和“JOSÉ”(以及所有大小写变体)。它始终只匹配重音变体。如果我搜索“jose”,它会匹配“JOSE”、“jose”、“Jose”,但不匹配重音符号。所以我部分满足了我的要求,因为我对重音和非重音分别不区分大小写。我需要它完全结合,这意味着重音(u

PHP如何从右侧提取字符串?

您好,我有这个URL字符串,我可能需要使用正则表达式来提取它,但需要从右到左进行提取。例如:http://localhost/wpmu/testsite/files/2012/06/testimage.jpg我需要提取这部分:2012/06/testimage.jpg如何做到这一点?提前致谢...更新:因为只有URL中的"file"是常量,所以我想提取"file"之后的所有内容。 最佳答案 您不一定需要使用正则表达式。$str='http://localhost/wpmu/testsite/files/2012/06/testima

php - 获取页面标题的正则表达式

这个问题有很多答案,但没有一个完整的答案:使用一个正则表达式,如何从Pagetitle中提取页面标题?还有其他几种标题标签的输入方式,例如:PagetitlePagetitlePagetitlePagetitle...或以上任意组合。它可以单独一行,也可以在其他标签之间:PagetitlePagetitle提前感谢您的帮助。UDPATE:因此,正则表达式方法可能不是最好的解决方案。哪种基于PHP的HTML解析器可以处理HTML格式良好(或格式不佳)的所有情况?更新2:sp00m的正则表达式(https://stackoverflow.com/a/13510307/1844607)似乎在

php - Preg_match 标识符

我想从我的标识符中获得匹配项。我在{/describe:foo}中有一个这样的字符串,我正在尝试匹配{/describe:}以返回foo,但我没有得到正确的正则表达式,会有人介意指出我做错了什么吗?这是我的比赛。$regexp='/\{describe:(.*?)\}/i';$query='{/describe:foo}';preg_match($regexp,$query,$match);print_r($match);//(bool)false背景我希望这可以帮助其他人,这样做的一个很好的理由是创建可替换的字符串中可以解释和替换的控制词,这是一个例子将在控制字上运行描述符的REST