php – 如何显示2个html文本块的比较

发布时间:2022-04-30 发布网站:脚本宝典
脚本宝典收集整理的这篇文章主要介绍了php – 如何显示2个html文本块的比较脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。
我需要带两个带有htML标签的文本块并进行比较 – 合并两个文本块,然后突出显示一个版本添加到下一个版本的内容.

我已经使用PEAR Text_Diff类成功地呈现纯文本的比较,但是当我尝试在其中输入带有html标签的文本时,它会变得很难.由于该类使用的单词和基于字符的比较算法,html标签被破坏,我最终得到了诸如< p>< span class =“new”>等丑陋的东西. < /< /跨度指p取代.它屠杀了HTML.

有没有办法在保留原始有效的html标记的同时生成文本比较?

谢谢您的帮助.我已经工作了几个星期了:[

这是我能想到的最佳解决方案:使用1个特殊的非标准字符(例如苹果标识(opt shift k))查找/替换每种类型的html标记,渲染与此类主要标记的比较,然后还原非标准字符返回标签.任何反馈?

问题似乎是您的diff程序应该将现有的HTML标记视为原子令牌而不是单个字符.

如果您的引擎能够限制自己处理单词边界,请查看是否可以覆盖确定单词边界的函数,以便识别并将HTML标记视为单个“单词”.

您也可以按照自己的意思去创建不同HTML标记的查找字典,用不同的未使用的Unicode值替换每个标记(我认为您可以使用一些用户定义的范围).但是,如果执行此操作,对标记的任何更改都将被视为对前一个或后一个单词的更改,因为Unicode字符将成为该单词到标记生成器的一部分.在每个令牌Unicode字符之前和之后添加空格将使HTML标记更改与纯文本更改分开.

脚本宝典总结

以上是脚本宝典为你收集整理的php – 如何显示2个html文本块的比较全部内容,希望文章能够帮你解决php – 如何显示2个html文本块的比较所遇到的问题。

如果觉得脚本宝典网站内容还不错,欢迎将脚本宝典推荐好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。