php如何比对两段文字?
高洛峰
高洛峰 2016-10-25 16:04:16
[PHP讨论组]

给出两段文字,如何进行比对?

就是如何给出两段文字,能够想word的审校功能一样,标出修改过程,或者类似听写之后的批改过程,比对出来两个字符串(段落)之间的插入、修改(基于字符)、删除功能。github的范例很好,但似乎不是最小编辑,不是逐词操作。

举个例子:

第1句话:Why I Cann't changed it. Becuase we can't.

第2句话:Why we can't change it now? Because you can.

程序能够对这两个句子进行对比,找到不同之处,自动跳过相同的部分,标记出来不一样的地方。

php如何实现这个算法?同时给出一个分数。是不是跟编辑距离有关?搜索关键词是:php diff?还是 compare strings?

以沪江为例:http://ting.hujiang.com/mansu...

1.jpg

感觉https://github.com/kijtra/tex...这个算法不如沪江的好用:

1.jpg

高洛峰
高洛峰

拥有18年软件开发和IT教学经验。曾任多家上市公司技术总监、架构师、项目经理、高级软件工程师等职务。 网络人气名人讲师,...

全部回复(1)
三叔

逐词比较。最简单的就是2个for循环,按每个索引位的单词进行比较。

DEMO
textdiff
楼主看看上面的吧,这个实现逻辑比较简单。
搜索关键字的话直接就是diff text就ok了。github


热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号