发布网友 发布时间:2022-04-29 20:19
共1个回答
热心网友 时间:2022-06-22 08:37
正则公式:(\d+)\*\d+\s
注意:最后一组数字后面也有空格才能匹配
.版本 2
.支持库 RegEx
.程序集 窗口程序集_启动窗口
.子程序 _按钮1_被单击
正则_匹配批量 (“1*3 11*32 12*31 16*23 14*3 15*3 ”)
.子程序 正则_匹配批量, 整数型, , 本子程序采用【精易编程助手】生成。成功返回匹配的数量,失败返回0。
.参数 源文本, 文本型, , 欲被匹配的文本
.局部变量 局_正则, 正则表达式, , , 采用的 正则表达式 支持库,无此支持库的请到官方网站下载正版易语言
.局部变量 局_搜索结果, 搜索结果, 静态, "0"
.局部变量 局_匹配数, 整数型, , , 匹配数量
.局部变量 局_计次, 整数型
.如果真 (局_正则.创建 (“(\d+)\*\d+\s”, 假) = 假)
信息框 (“正则创建失败,请检查正则表达式语句是否有误!”, #错误图标, , )
返回 (0)
.如果真结束
局_正则.多行模式 = 假
局_搜索结果 = 局_正则.搜索全部 (源文本)
局_匹配数 = 取数组成员数 (局_搜索结果)
.如果真 (局_匹配数 = 0)
信息框 (“匹配失败,请检检查正则语句是否有误,数量:0”, #错误图标, , )
返回 (0)
.如果真结束
.计次循环首 (局_匹配数, 局_计次)
编辑框1.加入文本 (局_搜索结果 [局_计次].取子匹配文本 (源文本, 1, ) + “ ”)
.计次循环尾 ()
返回 (局_匹配数)