网站大量收购闲置独家精品文档,联系QQ:2885784924

HTML标签截断加补全算法.docVIP

  1. 1、本文档共4页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
HTML标签截断加补全算法

在博客的载要显示已经新闻的载要内容等显示的时候,需要截断一定的字符,但是问题是,如果内容中有HTML标签,截断后就存在HTML标签没有闭合的问题,应用见本博客首页载要,在整个页面中后果不可预料,比如: div?class PostMain / p / p / p / p 本文以某新闻单位多媒体数据库系统为例,提出建立企业用户认证中心,实现基于安全策略的统一用户管理、认证和单点登录,解决用户在同时使用多个应用系统时所遇到的重复登录问题。 / p ??随着信息技术和网络技术的迅猛发展,企业内部的应用系统越来越多。比如在媒体... / p / p / div ? 截断后可能存在: div?class PostMain / p / p / p / p 本文以某新闻单位多媒体数据库系统为例,提出建立企业用户认证中心,实现基于安全策略的统一用户管理、认证和单点登录,解决用户在同时使用多个应用系统时所遇到的重复登录问题。 / p 的情况。 ? 本算法就是解决这个问题: 采用HTML标签压栈的方式,遇到一个 /就检查栈顶标签是否是这个标签,如果是则标示结束这个HTML标签,同时出栈。如果不是就证明有HTML标签丢失,则出栈,并在输出中加这个标签的结束标签 补全HTML 。如果到截断位置,把堆栈内的所有HTML标签出栈,并补到输出中。 2010-04-25 22:33:20 修正截取错误: #region?HTM代码截断和补全? ///?? ///?HTM代码截断和补全? ///?? ///?需要截断的HTML代码? ///?字符长度? ///?存储的堆栈? ///?? public?static?string?HTMLSubString string?scr,?int?length,?List ?tagNameStack string?retString? ?string.Empty; if? scr.Length? ?length retString? ?scr; else string?contentTxt? ?string.Empty; if? scr.Contains contentTxt? ?scr.Substring 0,?scr.IndexOf ;//获取标签 前的内容 if? contentTxt.Length? ?length //如果 前的内容小于要求长度 scr? ?scr.Substring scr.IndexOf ; retString?+ ?contentTxt;//前面的内容先填充到返回字符串中 string?tagContent? ?scr.Substring 0,?scr.IndexOf ?+?1 ; if? tagContent.Contains ? string?tagName? ?tagContent.Substring 1,?tagContent.IndexOf ? ?-?1 ; if? tagName.ToLower ?! ?br??tagName.ToLower ?! ?img retString?+ ?tagContent; tagNameStack.Add tagName ; else retString?+ ?tagContent; else?if? tagContent.Contains / string?tagName? ?tagContent.Substring 2,?tagContent.IndexOf ?-?2 ; if? tagNameStack.Count? ?0 while? tagName?! ?tagNameStack[tagNameStack.Count?-?1] retString?+ ? / ?+?tagNameStack[tagNameStack.Count?-?1]?+? ; tagNameStack.Remove tagNameStack[tagNameStack.Count?-?1] ; if? tagNameStack.Count? ?0 break; if? tagNameStack.Count? ?0??tagName? ?tagNameStack[tagNameStack.Count?-?1] retString?+ ? / ?+?tagName?+? ; tagNameStack.Remove tagName ; else string?tagName? ?tagContent.Substring 1,?tagContent.IndexOf ?-?1 ; if? tagName.ToLower ?! ?br??tagName.ToLower ?! ?img retStr

文档评论(0)

peain + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档