文本对比工具google-diff-match-patch
文本对比工具google-diff-match-patch
- 1. 文本对比工具
- 1.1 文本概述
- 1.2 demos
- 1.3 java案例
- 2. 对比案例验证
- 2.1 环境准备
- 2.2 代码实现
- 2.3 结果验证
1. 文本对比工具
1.1 文本概述
这里的文本对比工具不是像Beyond Compare工具一样,而是开源的文本对比工具包,通过代码实现文本对比。
Google的开源工具包google-diff-match-patch能够很好的实现文本对比,且兼容java,JavaScript,Python,lua等多种语言。
google-diff-match-patch原理就是文本a经过最少的增删改才能与文本b一样,通过红色,绿色或者横线呈现对比结果,也就是文本a与文本b不一样的地方。
GitHub地址:https://github.com/google/diff-match-patch
这是对应不同语言的实现,像cpp,csharp,dart,java,JavaScript,lua,Python等等。
其中demo是html的文件,直接打开可以清晰看到对比效果。
1.2 demos
解压demos
打开diff.html
1.3 java案例
2. 对比案例验证
java与JavaScript案例验证
2.1 环境准备
- 下载源码,通过GitHub地址:https://github.com/google/diff-match-patch
解压后状态图
- 创建项目引入源码。
2.2 代码实现
源码diff_match_patch两千多行就不粘贴了,代码上传至gitee上来,需要自行下载。
gitee地址:https://gitee.com/rjzhu/test/tree/dev/
import java.util.LinkedList;
import name.fraser.neil.plaintext.diff_match_patch;public class hello {public static void main(String args[]) {diff_match_patch dmp = new diff_match_patch();LinkedList<diff_match_patch.Diff> diff = dmp.diff_main("Hello World.", "Goodbye World.");// Result: [(-1, "Hell"), (1, "G"), (0, "o"), (1, "odbye"), (0, " World.")]dmp.diff_cleanupSemantic(diff);// Result: [(-1, "Hello"), (1, "Goodbye"), (0, " World.")]System.out.println(diff);}
}
2.3 结果验证
启动项目
访问地址:http://localhost:8080/tests/speedtest.html
文本对比工具google-diff-match-patch相关推荐
- debug内exe文件复制到桌面无法打开_Diffinity.轻量级的文件|文本对比工具
Diffinity是一款非常轻量级的文件与文本对比的小工具软件,软件的安装包仅475KB,同时支持高亮显示.插入显示.集成到资源管理器(右键菜单)等,非常的方便实用.并且最近的一次更新是在9月初,生命 ...
- linux/ubuntu下的代码对比工具Meld Diff
linux/ubuntu下的代码对比工具Meld Diff 做开发的都知道,一个项目多个版本,有的时候多了自己都昏,还有就是比对别人的代码的时候,眼睛看怕是要爆炸. 所以我们一般使用代码对比工具,也就 ...
- linux--代码对比工具Meld Diff
linux--代码对比工具Meld Diff 1 简介 2 安装 3 使用 参考 1 简介 Meld是一个可视的diff和合并工具.Meld是Linux软件,用户使用它可以比较2至3个文件并进行编辑, ...
- UltraCompare 22:文本对比工具 Mac版
UltraCompare中文版还可以实现文本对比,二进制文档对比,以及实现进行对比的文档间的不同点的整合.极大地提高了工作效率! 会议 使用UltraCompare的会话功能,您可以在多个选项卡中打开 ...
- vim实用指南(9)vimdiff好用的可视化文本对比工具
各种 IDE 大行其道的同时,传统的命令行工具以其短小精悍,随手可得的特点仍有很大的生存空间,这篇短文介绍了一个文本比较和合并的小工具:vimdiff.希望能对在 Unix/Linux 系统上进行开发 ...
- 前端文本对比工具使用 - mergely
测试效果图 <!-- This example demonstrates the minimum amount of code required to use Mergely. --> & ...
- [文本对比工具] Beyond Compare
目录 前言: 概述: 系统要求: 功能: 前言: 今天来安利一下工具了,这个是我群宝 给我分享的,今天记录一下了,摸摸鱼 概述: Beyond Compare是一套由Scooter Software推 ...
- Winform,RichTextBox,Json文本对比工具
在工作中,有的时候需要做一些Json对比的需求,通过肉眼去找到不一样的地方 当然,现在有很多可以做对比的小工具,比如Beyond Compare 但是这个有个弊端,如果对比的时候是个Json字符串,没 ...
- linux图形化文本对比工具
1. meld 1)工具介绍: Meld是一个适用于Gnome桌面的.开源的.图形化的文件差异查看和合并的应用程序.它支持2到3个文件的同时比较.递归式的目录比较.处于版 本控制(Bazaar, Co ...
- 文本对比工具推荐 winMerge
工欲善其事必先利其器,工作中时常需要对比两个文件的区别,推荐开源工具 winMerge 特点 Windows 操作系统 .无需安装.开源 下载地址 winMerge 官方:http://winmerg ...
最新文章
- memset用法详解
- python 去除str的引号 去除括号_用python进行图像修复与去除水印
- python二十九:__name__
- 133. Clone Graph 克隆图
- POJ 2018 Best Cow Fences (二分答案构造新权值 or 斜率优化)
- nginx集群_windows环境下搭建简单Nginx+Tomcat集群
- 【Direct3D游戏开发】——DirectInput 让世界动起来
- 部门直推!百度大搜索招聘NLP、搜索方向算法工程师!
- Linux系统编程 -- 文件描述符的复制:dup()和dup2()
- Ubuntu18.04配置ork(ecto、ecto_image_pipeline、ecto_opencv、ork_reconstruction)
- hping 详解_hping3使用
- 计算机网络考研知识点整理,计算机网络考研知识点
- Java读取文件的N种方法
- 小程序进阶-用户消息通知
- android studio翻译插件Translation使用。。
- 使用vue-cropper
- 浅谈 渗透测试工程师(黑客) 技能
- 基因组选择技术在农业动物育种中的应用
- 关于2010年部分节假日安排
- centos文件系统,日志以及文件误删恢复
热门文章
- Win10 安装 Rational Rose
- 在office2003中打开office2007文件的补丁(.docx文件,pptx文件打开方法)
- 计算机搜索不到PDF,PDF能打印吗,pdf虚拟打印机找不到
- php无限分类算法,php递归算法 php递归函数无限级分类
- 计算机wps基础知识,计算机考试WPSOffice常见知识点
- 安装MyEclipse10 并且破解(附带软件包)
- Maven之(五)Maven仓库
- vbscript运行环境linux,VBScript 是什么?
- android 静默暗转_Android 7.0 静默安装
- 泰坦尼克号python数据分析统计服_python_泰坦尼克号数据分析报告