CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
IBM Rational 系统开发最佳实践工具包 WebSphere MQ 最佳实践 TOP 15
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  VC/MFC >  基础类

如何让下面的C代码运作

楼主imageready(白白,白白,白白了)2006-03-04 18:57:37 在 VC/MFC / 基础类 提问

function   clean_summary($strSummary)   {  
          //   把结尾错误截断的HTML标签去掉  
          $arrMatchings   =   array(  
                  array("<",   ">"),  
                  array("&",   ";")  
          );  
          foreach   ($arrMatchings   as   $arrMatching)   {  
                  $intL   =   strrpos($strSummary,   $arrMatching[0]);  
                  if   ($intL   !==   false)   {  
                          $intR   =   strrpos($strSummary,   $arrMatching[1]);  
                          if   ($intL   >   $intR)   $strSummary   =   substr($strSummary,   0,   $intL);  
                  }  
          }  
          //   为了效率,能用str_replace搞定的就不用正则表达式  
          $strSummary   =   str_replace(array(  
                  "<br>",   "<br/>",   "</font>",   "</span>"  
          ),   array(  
                  "<br   />",   "<br   />",   "",   ""  
          ),   $strSummary);  
          //   有些非得用正则表达式,顺便复习一下正则表达式的用法  
          $arrPatterns   =   array(  
                  "#<script[.\s]*</script>#is",  
                  "#<script.*/>#is",  
                  "#<iframe[.\s]*</iframe>#is",  
                  "#<iframe.*/>#is",  
                  "#<img([^>]*)([^/])>#is",  
                  '#(height|width)="?(\d+)(px)?"?#is',  
                  "#border=[^\s]*   #is",  
                  "#<font[^>]*>#is",  
                  "#<span[^>]*>#is",  
                  "#<div[^>]*></div>#is",  
                  "#<p[^>]*></p>#is"  
          );  
          $arrReplacements   =   array(  
                  "",   "",   "",   "",  
                  "<img\1\2   />",  
                  '\1="\2"',  
                  "",   "",   "",   "",   ""  
          );  
          $strSummary   =   preg_replace($arrPatterns,   $arrReplacements,   $strSummary);  
          //   找出单独的“&”替换成“&amp;”  
          $intAnd   =   -1;  
          while   (($intAnd   =   strpos($strSummary,   "&",   $intAnd   +   1))   !==   false)   {  
                  if   (($intSemicolon   =   strpos($strSummary,   ";",   $intAnd))   !==   false)   {  
                          if   ($intSemicolon   -   $intAnd   >   6)   {  
                                  $strSummary   =   substr_replace($strSummary,   "&amp;",   $intAnd,   1);  
                                  continue;  
                          }  
                          $strEntity   =   substr($strSummary,   $intAnd,   $intSemicolon   -   $intAnd   +   1);  
                          $arrEntities   =   array(  
                                  "&nbsp;",   "&amp;",   "&lt;",   "&gt;",   "&quot;"  
                          );  
                          $boolNotEscaped   =   true;  
                          foreach   ($arrEntities   as   $e)   {  
                                  if   ($strEntity   ==   $e)   {  
                                          $boolNotEscaped   =   false;  
                                          break;  
                                  }  
                          }  
                          if   (!$boolNotEscaped)   continue;  
                          if   (!preg_match("^&#\d+;\$",   $strEntity))   {  
                                  $strSummary   =   substr_replace($strSummary,   "&amp;",   $intAnd,   1);  
                          }  
                  }   else   $strSummary   =   substr_replace($strSummary,   "&amp;",   $intAnd,   1);  
          }  
          return   $strSummary;  
  }  
  问题点数:100、回复次数:4Top

1 楼unionize(同盟会)回复于 2006-03-04 19:22:15 得分 90

用VC改了,已发送Top

2 楼MapleInHG()回复于 2006-03-04 23:02:51 得分 2

??这是C代码?Top

3 楼doon(vecodo)回复于 2006-03-04 23:38:53 得分 6

Php代码啊,老大Top

4 楼Snow_Ice1111(雪上加冰_爆破专用马甲,现在成了灌水专用)回复于 2006-03-04 23:45:03 得分 2

Are   these   code   of   C   or   C++   VC???Top

相关问题

  • 还是一段C代码的运作
  • 下面代码的vb代码如何用c#来替换?
  • 高分求下面asp代码转成c#代码。谢谢了
  • 下面代码中的部分vb.net代码怎么转换为c#代码
  • 谁能把下面的C++Builder代码转化为C#代码?在线等。。。。
  • 下面的c++代码如何转为c#
  • C#源代码
  • c++原代码
  • C原代码?
  • C++代码?

关键词

  • 代码
  • 正则表达式
  • strsummary
  • intand
  • arrmatching
  • boolnotescaped
  • intsemicolon
  • strentity
  • intl
  • array

得分解答快速导航

  • 帖主:imageready
  • unionize
  • MapleInHG
  • doon
  • Snow_Ice1111

相关链接

  • Visual C++类图书
  • Visual C++类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
北京创新乐知广告有限公司 版权所有, 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
Copyright © 2000-2008, CSDN.NET, All Rights Reserved
GongshangLogo