易语言里怎么取连续重复的数字? 5
在本篇文章里小编给大家带来的一篇关于易语言统计重复数教学内容,有兴趣的朋友们可以学习下。
比如1 2 3 3 5 4 6 5 4 8 7 3 2这么多数字想取重复数据,并统计重复次数,可以用易语言编程来实现。
1、易语言新建程序
2、新建一个Windows窗口程序
3、如下图所示,亲建2个编辑框,1个选择框,1个按钮,并做好相应排版。
4、双击取重复按钮,并编写如下代码:
12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849.版本 2 .支持库 EDataStructure .局部变量 zcf, 文本型, , "0" .局部变量 i, 整数型 .局部变量 ii, 整数型 .局部变量 个数, 整数型 .局部变量 节点, 节点 zcf = 分割文本 (编辑框1.内容, #换行符, ) .计次循环首 (取数组成员数 (zcf), i) 个数 = 0 .计次循环首 (取数组成员数 (zcf), ii) .如果真 (zcf [i] = zcf [ii]) 个数 = 个数 + 1 .如果真结束 .计次循环尾 () .如果真 (节点.加入属性 (到文本 (zcf [i]), 0)) .如果真 (个数 ≠ 1) .如果 (选择框2.选中 = 真) 编辑框2.加入文本 (zcf [i] + “----重复” + 到文本 (个数) + “次” + #换行符) .否则 编辑框2.加入文本 (zcf [i] + #换行符) .如果结束 .如果真结束 .如果真结束 .计次循环尾 ()
5、编译试运行,在编辑框1里面加入一组含重复项数据,选择看重复项选择框,点击取重复按钮,重复数据与重复次数就出现在右边的编辑框了,是不是很简单,如果有帮到您,请点击左下角的投票哦,希望大家能从本经验中学到知识收获快乐。
做成一个函数,调用函数输入数字文本,返回数字序列
.版本 2
.支持库 spec
.子程序 取重复次数, 文本型
.参数 数字, 文本型
.局部变量 局字节集, 字节集
.局部变量 输出文本, 文本型
.局部变量 重复次数, 整数型
.局部变量 循环变量, 整数型
局字节集 = 到字节集 (数字)
输出文本 = “”
重复次数 = 1
.计次循环首 (取字节集长度 (局字节集) - 1, 循环变量)
.如果 (局字节集 [循环变量] = 局字节集 [循环变量 + 1])
重复次数 = 重复次数 + 1
.否则
输出文本 = 输出文本 + 到文本 (循环变量) + “,”
循环变量 = 1
.如果结束
.如果真 (取字节集长度 (局字节集) - 1 = 循环变量)
输出文本 = 输出文本 + 到文本 (循环变量)
.如果真结束
.计次循环尾 ()
调试输出 (输出文本)
返回 (输出文本)
.子程序 统计, 文本型
.参数 参数字符串, 文本型
.局部变量 字符1, 文本型
.局部变量 计数, 整数型
.局部变量 结果, 文本型
.判断循环首 (参数字符串 ≠ “”)
字符1 = 取文本左边 (参数字符串, 1)
参数字符串 = 取文本右边 (参数字符串, 取文本长度 (参数字符串) - 1)
.如果 (字符1 = 取文本左边 (参数字符串, 1))
计数 = 计数 + 1
.否则
.如果 (结果 = “”)
结果 = “1”
.否则
结果 = 结果 + “,” + 到文本 (计数)
.如果结束
计数 = 1
.如果结束
.判断循环尾 ()
返回 (结果)
.支持库 RegEx
.支持库 spec
.子程序 __启动窗口_创建完毕
.局部变量 正则, 正则表达式
.局部变量 搜索, 搜索结果, , "0"
.局部变量 i, 整数型
正则.创建 (“(\d)(\1+)?”, )
搜索 = 正则.搜索全部 (“12211121”)
.计次循环首 (取数组成员数 (搜索), i)
调试输出 (取文本长度 (搜索 [i].取匹配文本 (“12211121”, )))
.计次循环尾 ()
正则表达式