|
原始文本按行分割存到数组,从每行中提取1/*作为分组依据,使用二维数组,以1/*为索引,将每行文本存入对应分组,按分组顺序拼接成要求格式。 变量名 | 类 型 | 静态 | 数组 | 备 注 | 文本行数组 | 文本型 | | 分割后的文本行 | 分组数组 | 文本型 | | 分组结果数组 | 分组索引 | 整数型 | | 分组索引 | 当前行 | 文本型 | | 当前处理的行 | 当前分组 | 文本型 | | 当前行的分组 | 结果文本 | 文本型 | | 最终结果文本 | i | 整数型 | | 循环变量 | j | 整数型 | | 循环变量 |
文本行数组 = 分割文本 (原始文本, #换行符, ) 重定义数组 (分组数组, 假, 10 ) 计次循环首 (取数组成员数 (文本行数组 ), i ) 当前行 = 文本行数组 [i ]  如果真 (取文本长度 (当前行 ) = 0 ) 继续 ()  当前分组 = 子文本替换 (左子文本 (当前行, 3 ), "/", "_", , , 假)  分组索引 = 到数值 (子文本替换 (当前分组, "_", "", , , 假))   分组数组 [分组索引 ] = 分组数组 [分组索引 ] + 当前行 + #换行符 计次循环尾 () 结果文本 = "" 计次循环首 (10, i )  如果真 (取文本长度 (分组数组 [i ]) = 0 ) 继续 ()  结果文本 = 结果文本 + " (" + #换行符  结果文本 = 结果文本 + 分组数组 [i ] 结果文本 = 结果文本 + " )" + #换行符 + #换行符 计次循环尾 ()返回 (结果文本 )
变量名 | 类 型 | 静态 | 数组 | 备 注 | 原始文本 | 文本型 | | | 分组结果 | 文本型 | | |
原始文本 = "1/1 aa*" + #换行符 + "1/2 a*a" + #换行符 + "1/3 *aa" + #换行符 + #换行符 + "1/1 *bb" + #换行符 + "1/2 b*b" + #换行符 + "1/3 bb*" + #换行符 + #换行符 + "1/1 c*c" + #换行符 + "1/2 *cc" + #换行符 + "1/3 cc*" + #换行符 + "1/4 c**" + #换行符 + #换行符 + "1/1 **d" + #换行符 + "1/2 d*d" + #换行符 + "1/3 dd*" + #换行符 + "1/4 *ddd" 分组结果 = 文本分组处理 (原始文本 ) 信息框 (分组结果, 0, "分组结果" )返回 (0 )
[color=rgba(0, 0, 0, 0.85)]输入你提供的文本后,输出结果会是:
(1/1 aa*1/1 *bb1/1 c*c1/1 **d)(1/2 a*a1/2 b*b1/2 *cc1/2 d*d)(1/3 *aa1/3 bb*1/3 cc*1/3 dd*)(1/4 c**1/4 *ddd)
[color=rgba(0, 0, 0, 0.85)]如需调整格式(如删除*[color=rgba(0, 0, 0, 0.85)]),可在存入分组数组前添加处理逻辑。
[color=rgba(0, 0, 0, 0.85)]
|
|