如何用正则表达式清除 <font face="Courier New"></font> 标签?

原来的内容

<font face="Courier New">......</font>

经过正则清除后

......

只需要清除 <font face="Courier New"></font> 这种标签,如果这种标签里面也包含有其他html代码不需要清除,比如如果包含了 <font face="微软雅黑"></font> 这种标签,则不需要清除。
最新回答
爱哭的小鬼

2024-09-05 02:03:53

$string = '<font face="Courier New">......</font>';
$regExp = '/(?<=<font face="Courier New">).*?(?=<\/font>)/is';
preg_match_all($string, $regExp, $matches);
追问
报错啊。

Warning: preg_match_all() [function.preg-match-all]: Unknown modifier '1' in D:\phpStudy\www\reg.php on line 17
追答
$string = '<font face="Courier New">......</font>';
$regExp = '/(?<=<font face="Courier New">).*?(?=<\/font>)/is';
preg_match_all($regExp, $string, $matches);

不好意思啊,第三行前两个参数写反了

追问
$str = '

12
4567
89
12

';

希望经过处理后显示为:

12
4567
89
12
追答
$string = '<font face="Courier New">12<font face="Courier">45</font>67<font face="Courier News">89</font>12</font>';
$regExp = '/(?<=<font face="Courier New">)(.*?font){4}.*?(?=<\/font>)/is';
preg_match_all($regExp, $string, $matches);
echo $matches[0][0];

只能根据实际情况来了

藍天白雲耍流氓

2024-09-05 15:29:26

<font face=[\s\S]+?</font>
麦兜爱馒头

2024-09-05 22:21:25

"<font face="Courier New">([^<]*)</font>" $1
追问
请问php代码怎么写的?
追答

很遗憾,我用C#的,不会PHP。

大概是这么用的

<?php
$string = '<font face="Courier New">......</font>';
$pattern = '<font face="Courier New">([^<]*)</font>';
$replacement = '$1';
echo preg_replace($pattern, $replacement, $string);
?>