查找重复项
阅读其他语言: English Español 日本語 한국어 Português Русский
重复查找器是一款开源应用程序,用于检测一个或多个文件中的相似文本。 它可以用于查找100%的重复内容以及相似但不相同的内容。 该工具兼容包括纯文本、Markdown 和 XML 在内的几种格式。
重复查找工具可以帮助您:
- 检测抄袭
- 内容管理
- SEO优化
- 数据去重
重复内容示例
这是一个快速示例,可以让你了解该工具检测的内容:
如何使用
- 下载应用程序。 或者,您可以自己从源码.
- 确保您的计算机上安装了 Java 16 或更高版本
- 在终端中,打开下载的 .jar 文件所在的文件夹
-
执行
java -jar duplicate-finder.jar
并使用以下参数:参数 意义 例子 -r
/--root
必填要搜索重复内容的文件夹的相对或绝对路径 -r=./my-project/
-o
/--output
保存分析结果的文件夹的相对或绝对路径。 如果未指定目录,重复项查找器将使用当前工作目录。 -r=./my-project/duplicates/
-f
/--fileMask
要分析的文件扩展名的逗号分隔列表。默认情况下,会分析所有文件。 -f=md,mdx
-p
/--parser
将什么视为文本块。以下选项可用:
- md – 一个markdown元素
- line – 单行文本
- xml – 一个XML元素
- adoc – AsciiDoc 元素
- file – 整个文件的内容
- auto – 尝试从文件掩码推断
-i=md
-l
/--minLength
要分析的文本块的最小长度(以字符计)。 默认值:100(短于 100 个字符的文本片段将被忽略) -l=150
-s
/--minSimilarity
两个文本块被视为重复的最低相似度。 默认值: 0.9 (90%) -s=0.85
-d
/--minDuplicates
报告重复组的最低重复次数。默认值:1(一个重复项就够了) -d=5
-ui
/--ui
是否使用交互式用户界面。选项: - none – 无界面,仅写入文件
- swing – 旧界面
- compose – 新界面,默认
-ui=none
-v
/--verbose
是否将进度和错误记录到控制台。 如果分析耗时过长且怀疑存在问题,请使用此选项。 默认:不记录 -v
-m
/--memory
低内存模式 - 在牺牲分析速度的情况下,将重复查找器的内存占用降到最低。 -m
-g
/--gram
(高级)ngram 长度 – 影响速度、内存占用以及分析的准确性。差异取决于内容的具体情况。 -g=10
-w
/--keepWhitespace
在解析的内容中保留多个连续空格的出现。默认情况下,空格会被标准化,这意味着多个连续的空格字符会被视为一个并显示为一个。 -w
-i
/--inline
是否在其封闭元素中包含嵌套元素的内容。例如:
<parent>Some content including <child>nested content</child></parent>
启用此选项后,外部元素将解析为'Some content including nested content', 而默认情况下,它解析为'Some content including'。
-i
命令示例
以下是您的命令可能的样子:
java -jar duplicate-finder.jar -r=/Users/me.user/my-site -i=md -f=md,mdx -s=0.85 -d=5 -l=200
上述命令将执行以下操作:
-
-r=/Users/me.user/my-site
– 在 '/Users/me.user/my-site' 及其子目录中搜索类似内容 -
-i=md
– 假设内容是用 Markdown 编写的,并根据 Markdown 规则进行解析 -
-f=md,mdx
– 仅考虑扩展名为 '.md' 和 '.mdx' 的文件 -
-s=0.85
– 仅报告相似度为 85% 或更高的匹配项 -
-d=5
– 仅报告被重复 5 次或更多次的文本 -
-l=200
– 仅报告 200 个字符或更长的文本
结果
根据设置和项目规模,您可能需要稍等片刻以完成分析。 之后,结果将会在重复项查看器中打开,并保存在用“-o”命令行选项定义的文件夹中。 如果没有指定选项,输出将写入工作目录。
以下是您在重复查看器中看到的:


- 工具栏:配置字体大小、排序顺序,以及是否只想看到每个重复组的单个参考块(2)。
- 参考块列表:选择作为比较参考的块。
- 重复块列表:在选择参考块(2)后,此列表将显示与其相似的块。要预览重复项,请从列表中选择它。
- 参考块预览:选择参考块(2)后,可以在此处预览其内容。常见部分以绿色显示,不同部分以红色显示。重复块(3)中具有共同部分的数量越多,显示的绿色就越多。
- 重复块预览:选择重复块后,其预览将出现在此处。您可以使用它与选定的参考块(4)进行快速比较。
了解更多及联系我们
如果您对该工具的开发感兴趣,请查看相关的博客系列文章:
如有反馈意见,可以使用本页底部的联系方式与我联系。我很乐意听取您的意见和功能请求。
许可
代码在 MIT 许可证下许可,这意味着您可以自由使用它用于任何目的,以及分叉和修改它。