2015-12-14 48 views
-3

我用这个代码:PHP的preg_replace不工作

$message = preg_replace("/<div style=\'background-color:#C0C8D0;width:95%;\'>SMA Forr&aacute;sk&oacute;d: <a href=\'\' onclick=\'selectcode((.*));return false;\'>[ Mindet kijelol ]<\/a><\/div><div id=\'(.*)\' style=\'width:95%;max-width:95%;max-height: 500px; overflow:scroll;background-color: #FFFFFF;\'><pre class=\'sma\' style=\'font-family:monospace;font-size: 12px;\'><ol><li style=\'font-weight: normal; vertical-align:top;\'><div style=\'font: normal normal 1em\/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;\'>(.*)<\/div><\/li><\/ol><\/pre><\/div>/",'[sma]<pre>$3</pre>[/sma]',$message); 

,但它不工作。 HTML的原始:

<div style='background-color:#C0C8D0;width:95%;'>SMA Forr&aacute;sk&oacute;d: <a href='#' onclick='selectcode(16351);return false;'>[ Mindet kijelol ]</a></div><div id='16351' style="width:95%;max-width:95%;max-height: 500px; overflow:scroll;background-color: #FFFFFF;"><pre class="sma" style="font-family:monospace;font-size: 12px;"><ol><li style="font-weight: normal; vertical-align:top;"><div style="font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;">some-text</div></li></ol></pre></div> 
+2

欢迎来到Stack Overflow!请参阅[问]和[完美的问题](http://codeblog.jonskeet.uk/2010/08/29/writing-the-perfect-question/) – Rizier123

回答

0
$re = "/<div style='background-color:#C0C8D0;width:95%;'>SMA Forr&aacute;sk&oacute;d: <a href='#' onclick='selectcode\\((.*)\\);return false;'>\\[ Mindet kijelol \\]<\\/a><\\/div><div id='(.*)' style=\"width:95%;max-width:95%;max-height: 500px; overflow:scroll;background-color: #FFFFFF;\"><pre class=\"sma\" style=\"font-family:monospace;font-size: 12px;\"><ol><li style=\"font-weight: normal; vertical-align:top;\"><div style=\"font: normal normal 1em\\/1\\.2em monospace; margin:0; padding:0; background:none; vertical-align:top;\">(.*)<\\/div><\\/li><\\/ol><\\/pre><\\/div>/"; 
$str = "<div style='background-color:#C0C8D0;width:95%;'>SMA Forr&aacute;sk&oacute;d: <a href='#' onclick='selectcode(16351);return false;'>[ Mindet kijelol ]</a></div><div id='16351' style=\"width:95%;max-width:95%;max-height: 500px; overflow:scroll;background-color: #FFFFFF;\"><pre class=\"sma\" style=\"font-family:monospace;font-size: 12px;\"><ol><li style=\"font-weight: normal; vertical-align:top;\"><div style=\"font: normal normal 1em/1.2em monospace; margin:0; padding:0; background:none; vertical-align:top;\">some-text</div></li></ol></pre></div>\n"; 

preg_match($re, $str, $matches); 
+0

谢谢你,它的工作: ) – kiki33

0

你的HTML不匹配:

pattern: [..snip..] <a href=\'\' onclick 
html : [..snip..] <a href='#' onclick 

所以...是啊。

+0

哦,是的,谢谢 – kiki33