快速数组/寻找文本工具

易语言 2020-03-14 20:42:54

快速数组/寻找文本工具

.子程序 数组_寻找文本, 文本型, 公开, 成功返回内容----数组,失败返回空。
.参数 文本, 文本型, 数组
.参数 被寻找文本, 文本型, 数组
.参数 起始寻找位置, 整数型, 可空, 位置索引可以为正值,1表示第一个字符,2表示第二个字符,依次类推;位置索引也可以为负值,-1表示最后一个字符,-2表示倒数第二个字符,依次类推。如果本参数被省略,默认为1。
.参数 是否分区大小写, 逻辑型, 可空, 默认为“假”
.参数 返回数组行, 整数型, 可空, 如果本参数被省略,默认为从“起始位置”到文本结尾的字符个数。超过大于数组数返回全部数组
.局部变量 i, 整数型
.局部变量 对象, 快速文本对象
.局部变量 p, 整数型
.局部变量 对象内容, 文本型
.局部变量 分割, 文本型, , "0"

.如果真 (起始寻找位置 = 0)
起始寻找位置 = 1
.如果真结束
.计次循环首 (取数组成员数 (文本), i)
处理事件 ()
对象.添加 (文本 [i])
.计次循环首 (取数组成员数 (被寻找文本), p)
.如果真 (对象.寻找文本 (被寻找文本 [p], 起始寻找位置, 是否分区大小写) ≠ -1)
.判断开始 (对象内容 = “”)
对象内容 = 文本 [i] + “----” + 被寻找文本 [p]
.默认
对象内容 = 对象内容 + #换行符 + 文本 [i] + “----” + 被寻找文本 [p]
.判断结束

.如果真结束

.计次循环尾 ()
对象.清除文本 ()
.计次循环尾 ()
对象.添加 (对象内容)
分割 = 对象.分割文本 (#换行符, )
调试输出 (分割)
对象.清除文本 ()
.如果真 (返回数组行 ≠ 0)
.如果真 (返回数组行 ≤ 取数组成员数 (被寻找文本))
返回 (分割 [返回数组行])