[/quote
][e=0
].版本 2
| 窗口程序集名 | 保 留 | 保 留 | 备 注 |
| 窗口程序集_启动窗口 | | | |
| 变量名 | 类 型 | 数组 | 备 注 |
| 全部内容 | 文本型 | |
| 排除列表 | 文本型 | 0 |
| i | 整数型 | |
| 每行 | 文本型 | 0 |
| n | 整数型 | |
| 当前行 | 文本型 | |
| 保留 | 逻辑型 | |
| 排除项 | 文本型 | |
| 最终内容 | 文本型 | |
最终内容 =
“” 全部内容 = 编辑框3.内容
排除列表 =
分割文本 (编辑框2.内容,
“,”,
)
计次循环首 (取数组成员数 (排除列表
), i
)
排除列表
[i
] =
删首尾空 (排除列表
[i
])
计次循环尾 () 每行 =
分割文本 (全部内容,
#换行符, )
计次循环首 (取数组成员数 (每行
), n
)
当前行 =
删首尾空 (每行
[n
])

如果真 (当前行 =
“”)
到循环尾 ()


保留 = 真

计次循环首 (取数组成员数 (排除列表
), i
)

排除项 = 排除列表
[i
]

如果真 (寻找文本 (当前行,
“+” + 排除项, ,
假) ≠ -1
)


保留 = 假


跳出循环 ()



计次循环尾 ()

如果真 (保留 =
真)

最终内容 = 最终内容 + 当前行 +
#换行符 

计次循环尾 () 编辑框3.内容 = 最终内容
[e=0].版本 2
.程序集 窗口程序集_启动窗口
.程序集变量 全部内容, 文本型, , , 存放编辑框3原始文本
.程序集变量 排除列表, 文本型, , "0", 存放标记框2拆分的排除关键词
.程序集变量 i, 整数型, , , 内层遍历排除列表循环变量
.程序集变量 每行, 文本型, , "0", 按换行拆分后的每行文本
.程序集变量 n, 整数型, , , 外层遍历每行的循环变量
.程序集变量 当前行, 文本型, , , 临时存储单行内容
.程序集变量 保留, 逻辑型, , , 标记本行是否保留输出
.程序集变量 排除项, 文本型, , , 临时存储单个排除关键词
.程序集变量 最终内容, 文本型, , , 过滤完成后的结果文本
.子程序 _按钮1_被单击, , , 点击开始过滤触发
' 清空上次结果
最终内容 = “”
' 读取左侧全部原始组合
全部内容 = 编辑框3.内容
' 拆分右侧输入的排除数字(逗号分隔)
排除列表 = 分割文本 (编辑框2.内容, “,”, )
' 清洗排除数字,去除空格
.计次循环首 (取数组成员数 (排除列表), i)
排除列表
= 删首尾空 (排除列表 )
.计次循环尾 ()
' 把所有原始组合按行拆分
每行 = 分割文本 (全部内容, #换行符, )
' 逐行遍历过滤
.计次循环首 (取数组成员数 (每行), n)
当前行 = 删首尾空 (每行 [n])
' 空行直接跳过
.如果真 (当前行 = “”)
到循环尾 ()
.如果真结束
保留 = 真
' 检查当前行是否包含任意排除数字
.计次循环首 (取数组成员数 (排除列表), i)
排除项 = 排除列表
.如果真 (寻找文本 (当前行, “+” + 排除项, , 假) ≠ -1)
保留 = 假
跳出循环 ()
.如果真结束
.计次循环尾 ()
' 不包含排除数字则保留本行
.如果真 (保留 = 真)
最终内容 = 最终内容 + 当前行 + #换行符
.如果真结束
.计次循环尾 ()
' 过滤完成后,把剩余组合重新输出到左侧编辑框
编辑框3.内容 = 最终内容