我正在使用
PHP中的正则表达式.我有以下字符串:
<img src="/files/admin/hotel_website.gif" alt="Go To The Hotel's Web Site" align="absmiddle" border="0" class="hotel_icon" />
此字符串包含回车符和换行字符.@H_301_4@
我想要我的正则表达式用IMG替换html img标签,但这不适用于上述文本.@H_301_4@
我发现它包含这些字符,通过循环遍历字符串中的每个字符,并打印出可以在这里找到的十六进制表示(http://pastebin.com/ViNdBsRV).@H_301_4@
这是我的正则表达式:@H_301_4@
strip_tags(preg_replace('/^\s*<img\s*.*\/?>\s*$/i','[IMG]',$test));
欣赏帮助.@H_301_4@
这个:
preg_replace("#<img.+?/>#is",$test)
个人当我正式表达时,我总是尝试走最短/最简单的方式.
在这里,您要替换整个标签,以’< img'开头,以'/>‘,’结尾. ?是一个非贪婪(懒惰)的捕获.
而对于修饰词“我”就是这样的.有可能成为新的一线.@H_301_4@
更多关于贪婪vs懒惰:http://www.regular-expressions.info/repeat.html
更多关于修饰词:http://www.php.net/manual/en/reference.pcre.pattern.modifiers.php@H_301_4@