原字符串:
<LI>
<SPAN id=result_box lang=fr c="4" a="undefined" zd="null" closure_uid_235198886="43">
<SPAN class=hps zd="null" closure_uid_235198886="1391">la belle</SPAN>
<SPAN class=hps zd="null" closure_uid_235198886="1392">courbe de</SPAN>
<BR zd="null" closure_uid_235198886="1410">
<SPAN class=hps zd="null" closure_uid_235198886="1399">Parfait comme</SPAN>
<SPAN class=hps zd="null" closure_uid_235198886="1400">cadeau pour votre amoureux</SPAN>
<BR zd="null" closure_uid_235198886="1411">
<SPAN class=hps zd="null" closure_uid_235198886="1401">NOTE</SPAN>
<SPAN zd="null" closure_uid_235198886="1402">: Laver</SPAN>
<SPAN class=hps zd="null" closure_uid_235198886="1403">à la main</SPAN>
</SPAN>
<LI>处理后的字符串:
<LI>
la belle courbe de <br>
Parfait comme cadeau pour votre amoureux <br>
NOTE : Laver à la main
<LI>问题:
请问如何写正则
preg_replace();
<LI>
<SPAN id=result_box lang=fr c="4" a="undefined" zd="null" closure_uid_235198886="43">
<SPAN class=hps zd="null" closure_uid_235198886="1391">la belle</SPAN>
<SPAN class=hps zd="null" closure_uid_235198886="1392">courbe de</SPAN>
<BR zd="null" closure_uid_235198886="1410">
<SPAN class=hps zd="null" closure_uid_235198886="1399">Parfait comme</SPAN>
<SPAN class=hps zd="null" closure_uid_235198886="1400">cadeau pour votre amoureux</SPAN>
<BR zd="null" closure_uid_235198886="1411">
<SPAN class=hps zd="null" closure_uid_235198886="1401">NOTE</SPAN>
<SPAN zd="null" closure_uid_235198886="1402">: Laver</SPAN>
<SPAN class=hps zd="null" closure_uid_235198886="1403">à la main</SPAN>
</SPAN>
<LI>处理后的字符串:
<LI>
la belle courbe de <br>
Parfait comme cadeau pour votre amoureux <br>
NOTE : Laver à la main
<LI>问题:
请问如何写正则
preg_replace();
$arr2=array('$1 ', '<br>', '');
preg_replace($arr1, $arr2, $str);\r\n是windows文本换行符,要注意对应文本的格式
没环境测试,自己摸索一下吧
<SPAN id=result_box lang=fr c="4" a="undefined" zd="null" closure_uid_235198886="43">
<SPAN class=hps zd="null" closure_uid_235198886="1391">la belle</SPAN>
<SPAN class=hps zd="null" closure_uid_235198886="1392">courbe de</SPAN>
<BR zd="null" closure_uid_235198886="1410">
<SPAN class=hps zd="null" closure_uid_235198886="1399">Parfait comme</SPAN>
<SPAN class=hps zd="null" closure_uid_235198886="1400">cadeau pour votre amoureux</SPAN>
<BR zd="null" closure_uid_235198886="1411">
<SPAN class=hps zd="null" closure_uid_235198886="1401">NOTE</SPAN>
<SPAN zd="null" closure_uid_235198886="1402">: Laver</SPAN>
<SPAN class=hps zd="null" closure_uid_235198886="1403">à la main</SPAN>
</SPAN>
<LI>';$reg = "/<span(.*)>|<\/span>|zd=\"(.*)\"|closure_uid_235198886=\"(.*)\"/iU";
$str = preg_replace($reg, '', $str1);var_dump($str);exit;
<LI>
<SPAN id=result_box lang=fr c="4" a="undefined" zd="null" closure_uid_235198886="43">
<SPAN class=hps zd="null" closure_uid_235198886="1391">la belle</SPAN>
<SPAN class=hps zd="null" closure_uid_235198886="1392">courbe de</SPAN>
<BR zd="null" closure_uid_235198886="1410">
<SPAN class=hps zd="null" closure_uid_235198886="1399">Parfait comme</SPAN>
<SPAN class=hps zd="null" closure_uid_235198886="1400">cadeau pour votre amoureux</SPAN>
<BR zd="null" closure_uid_235198886="1411">
<SPAN class=hps zd="null" closure_uid_235198886="1401">NOTE</SPAN>
<SPAN zd="null" closure_uid_235198886="1402">: Laver</SPAN>
<SPAN class=hps zd="null" closure_uid_235198886="1403">à la main</SPAN>
</SPAN>
<LI>
TXT;
echo strip_tags($s, '<li><br>');
$str1 = '<LI>
<SPAN id=result_box lang=fr c="4" a="undefined" zd="null" closure_uid_235198886="43">
<SPAN class=hps zd="null" closure_uid_235198886="1391">la belle</SPAN>
<SPAN class=hps zd="null" closure_uid_235198886="1392">courbe de</SPAN>
<BR zd="null" closure_uid_235198886="1410">
<SPAN class=hps zd="null" closure_uid_235198886="1399">Parfait comme</SPAN>
<SPAN class=hps zd="null" closure_uid_235198886="1400">cadeau pour votre amoureux</SPAN>
<BR zd="null" closure_uid_235198886="1411">
<SPAN class=hps zd="null" closure_uid_235198886="1401">NOTE</SPAN>
<SPAN zd="null" closure_uid_235198886="1402">: Laver</SPAN>
<SPAN class=hps zd="null" closure_uid_235198886="1403">à la main</SPAN>
</SPAN>
<LI>';$reg = "/<span(.*)>|<\/span>|zd=\"(.*)\"|closure_uid_235198886=\"(.*)\"/iU";
$str = preg_replace($reg, '', $str1);var_dump($str);exit;
这个没有把<br>里面的冗余代码去掉。
因为我的$s前后都还有HTML代码,这里只是截取了需要替换的部分字符串,所以不能用这种方法,只能用正则。
'/<span[^>]*>/i',
'/<\/span>/i',
'/<br[^>]*>/i',
);
$replace = array(
'',
'',
'<br>',
);
echo preg_replace($patterns, $replace, $str);这个不错。