开启辅助访问 切换到宽版

精易论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

用微信号发送消息登录论坛

新人指南 邀请好友注册 - 我关注人的新帖 教你赚取精币 - 每日签到


求职/招聘- 论坛接单- 开发者大厅

论坛版规 总版规 - 建议/投诉 - 应聘版主 - 精华帖总集 积分说明 - 禁言标准 - 有奖举报

查看: 276|回复: 16
打印 上一主题 下一主题
收起左侧

[易语言纯源码] ✅超级编辑框_查找差异/diff/文本对比

[复制链接]
跳转到指定楼层
楼主
发表于 昨天 18:43 | 只看该作者 |只看大图 回帖奖励 |正序浏览 |阅读模式   辽宁省葫芦岛市
分享源码
界面截图:
是否带模块: 纯源码
备注说明: -
本帖最后由 莫小乐 于 2026-7-15 18:54 编辑
  
窗口程序集名保 留  保 留备 注
窗口程序集_启动窗口   
子程序名返回值类型公开备 注
__启动窗口_创建完毕  
超级编辑框1.内容 = “X=78.92&k=0.047#[3,19,-5.6,√81]”#换行符“|v≈店淘旧书,货架摆”#换行符“着散文、老杂志与”#换行符“绝版小说,标价多在十几元02。”#换行符“26.3m/s,T≥90A9$8g_!x86572”
超级编辑框2.内容 = “X=78.29&k=0.049#[3,19,-5.8,√64]”#换行符“|v≈店淘旧书,货架摆”#换行符“着散无、老杂志与”#换行符“绝版大说,标价多在无几元01。”#换行符“23.6m/s,T≥88A9$7g_!x86s72”
文本_超级编辑框_查找差异 (超级编辑框1, 超级编辑框2)
子程序名返回值类型公开备 注
文本_超级编辑框_查找差异 博乐助手
参数名类 型参考可空数组备 注
超级编辑框A超级编辑框所对比的超级编辑框 里面的文本1
超级编辑框V超级编辑框所对比的超级编辑框 里面的文本2
变量名类 型静态数组备 注
x整数型 
' 第一次对比:以A为基准,标记A中与V不同的字符
计次循环首 (超级编辑框A.取行数 (), x)
文本_超级编辑框_处理差异行 (超级编辑框A, 超级编辑框A.取行文本 (x - 1), 超级编辑框V.取行文本 (x - 1), x - 1)
计次循环尾 ()
' 第二次对比:以V为基准,标记V中与A不同的字符
计次循环首 (超级编辑框V.取行数 (), x)
文本_超级编辑框_处理差异行 (超级编辑框V, 超级编辑框V.取行文本 (x - 1), 超级编辑框A.取行文本 (x - 1), x - 1)
计次循环尾 ()
子程序名返回值类型公开备 注
文本_超级编辑框_处理差异行 博乐助手
参数名类 型参考可空数组备 注
超级编辑框超级编辑框
内容文本型
对比文本型
第几行整数型
变量名类 型静态数组备 注
内容数组文本型0
对比数组文本型0
最大长度整数型 
i整数型 
j整数型 
当前位置整数型 
行起始整数型 
红色字符格式字符格式 
黑色字符格式字符格式 
' 初始化字符格式
黑色字符格式.字体大小 = 12
黑色字符格式.文本颜色 = #黑色
黑色字符格式.效果 = 0
红色字符格式.字体大小 = 12
红色字符格式.文本颜色 = #红色
红色字符格式.效果 = 0
' 计算当前行的起始位置(累计前面所有行的字符长度)
行起始 = 0
变量循环首 (0, 第几行 - 1, 1, j)
行起始 = 行起始 + 文本_取字符长度 (超级编辑框.取行文本 (j))
变量循环尾 ()
' 如果两行内容完全相同,整行设为黑色并返回
如果真 (内容 = 对比)
超级编辑框.起始选择位置 = 行起始
超级编辑框.被选择字符数 = 文本_取字符长度 (内容)
超级编辑框.置选择区字符格式 (黑色字符格式)
返回 ()

' 将文本分割成单个字符数组
文本_分割逐字 (内容, 内容数组)
文本_分割逐字 (对比, 对比数组)
' 取两个数组中较长的长度作为循环次数
最大长度 = 取数组成员数 (内容数组)
如果真 (取数组成员数 (对比数组) > 最大长度)
最大长度 = 取数组成员数 (对比数组)

' 先将整行统一设为黑色
超级编辑框.起始选择位置 = 行起始
超级编辑框.被选择字符数 = 文本_取字符长度 (内容)
超级编辑框.置选择区字符格式 (黑色字符格式)
' 逐字符对比,不同的字符标记为红色
当前位置 = 行起始
计次循环首 (最大长度, i)
' 判断当前字符是否超出两个数组的范围
如果 (i ≤ 取数组成员数 (内容数组) i ≤ 取数组成员数 (对比数组))
' 两个数组都有该位置字符,比较是否相同
如果真 (内容数组 [i] ≠ 对比数组 [i])
超级编辑框.起始选择位置 = 当前位置
超级编辑框.被选择字符数 = 1
超级编辑框.置选择区字符格式 (红色字符格式)

' 其中一个数组已结束,内容数组还有字符则标记为红色
如果真 (i ≤ 取数组成员数 (内容数组))
超级编辑框.起始选择位置 = 当前位置
超级编辑框.被选择字符数 = 1
超级编辑框.置选择区字符格式 (红色字符格式)

当前位置 = 当前位置 + 1
计次循环尾 ()
子程序名返回值类型公开备 注
文本_取字符长度整数型 博乐助手
参数名类 型参考可空数组备 注
文本文本型
置入代码 ({ 139, 125, 8, 139, 63, 49, 192, 138, 31, 128, 251, 0, 116, 10, 128, 251, 127, 118, 1, 71, 71, 64, 235, 239, 201, 194, 4, 0 })
返回 (0)
子程序名返回值类型公开备 注
文本_分割逐字整数型 博乐助手
参数名类 型参考可空数组备 注
参_内容文本型
参_文本数组文本型
变量名类 型静态数组备 注
返回值文本型 
' 例程收录自:[url=https://bbs.125.la/forum.php?mod=viewthread&tid=14228410]https://bbs.125.la/forum.php?mod=viewthread&tid=14228410[/url]
如果真 (参_内容 = “”)
返回 (0)
返回值 = 取空白文本 (取文本长度 (参_内容) × 2)
置入代码 ({ 139, 69, 8, 139, 48, 139, 125, 252, 172, 168, 128, 117, 26, 60, 32, 116, 247, 60, 9, 116, 243, 60, 13, 116, 239, 60, 10, 116, 235, 132, 192, 116, 28, 170, 176, 9, 170, 235, 225, 60, 161, 117, 10, 134, 224, 172, 60, 161, 116, 214, 134, 224, 78, 170, 172, 170, 176, 9, 170, 235, 203, 49, 192, 170 })
参_文本数组 = 分割文本 (返回值, 到文本 ({ 9 }), )
返回 (取数组成员数 (参_文本数组))


i支持库列表   支持库注释   
iext2扩展界面支持库二




游客,如果您要查看本帖隐藏内容请回复

签到天数: 13 天

17
发表于 1 小时前 | 只看该作者   安徽省合肥市
感谢分享 支持一下
回复 支持 反对

使用道具 举报

结帖率:92% (24/26)

签到天数: 14 天

16
发表于 2 小时前 | 只看该作者   匈牙利
感谢分享 支持一下
回复 支持 反对

使用道具 举报

结帖率:100% (5/5)

签到天数: 16 天

15
发表于 4 小时前 | 只看该作者   河南省平顶山市
不错拿走看看

回复 支持 反对

使用道具 举报

签到天数: 16 天

14
发表于 4 小时前 | 只看该作者   山东省菏泽市
感谢分享!
回复 支持 反对

使用道具 举报

结帖率:0% (0/2)

签到天数: 1 天

13
发表于 5 小时前 | 只看该作者   山东省济南市
6666666666666666666
回复 支持 反对

使用道具 举报

签到天数: 16 天

12
发表于 昨天 23:35 | 只看该作者   广东省汕头市
66666666666666666666
回复 支持 反对

使用道具 举报

签到天数: 11 天

11
发表于 昨天 22:16 | 只看该作者   广东省阳江市
谢谢分享
回复 支持 反对

使用道具 举报

签到天数: 14 天

10
发表于 昨天 21:53 | 只看该作者   江苏省连云港市
感谢分享
回复 支持 反对

使用道具 举报

签到天数: 15 天

9
发表于 昨天 21:30 | 只看该作者   新疆维吾尔自治区乌鲁木齐市
666666666666666666666
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则 致发广告者

发布主题 收藏帖子 返回列表

sitemap| 易语言源码| 易语言教程| 易语言论坛| 易语言模块| 手机版| 广告投放| 精易论坛
拒绝任何人以任何形式在本论坛发表与中华人民共和国法律相抵触的言论,本站内容均为会员发表,并不代表精易立场!
论坛帖子内容仅用于技术交流学习和研究的目的,严禁用于非法目的,否则造成一切后果自负!如帖子内容侵害到你的权益,请联系我们!
防范网络诈骗,远离网络犯罪 违法和不良信息举报QQ: 793400750,邮箱:wp@125.la
网站简介:精易论坛成立于2009年,是一个程序设计学习交流技术论坛,隶属于揭阳市揭东区精易科技有限公司所有。
Powered by Discuz! X3.4 揭阳市揭东区精易科技有限公司 ( 粤ICP备2025452707号) 粤公网安备 44522102000125 增值电信业务经营许可证 粤B2-20192173

快速回复 返回顶部 返回列表