【发布时间】:2020-12-08 21:12:01
【问题描述】:
我试图弄清楚如何使用 RPGLE 在数组的多次出现中搜索常见值,但到目前为止一直没有成功。我想要做的是找出有多少数组共享相同的共同值。每个数组长度为 1,数组长度最大为 100。例如:
Array 1 = 'a' 'b' 'c' 'd' 'e' 'f' ' ' ' '.....
Array 2 = 'a' 'b' 'c' 'd' 'e' 'g' ' ' ' '.....
Array 3 = 'd' 'c' 'a' 'b' 'h' 'e' ' ' ' '.....
Array 4 = 'k' 'b' 'e' 'd' 'a' 'g' ' ' ' '.....
我试图找到一种简单的方法来确定字母 a、b、d 和 e 在数组之间都是通用的,或者这些字母中的每一个在数组之间都是共享的。
有没有人知道如何轻松地进行此搜索,这样我就不必陷入嵌套的do's and if's hell?当一个数组的所有 100 个元素都被填满时,它会变得非常棘手。不过,好消息是,可以填写的数组只有 10 个。
提前致谢!
【问题讨论】:
-
嗯,这实际上是一个一次性的清理程序。我有成千上万的记录值,并且必须找出哪些记录具有共同字符,并将它们标记为删除。我越来越习惯于我可能不得不做嵌套的 IF 东西的想法。我今晚要睡觉,看看早上是否会发生奇迹,然后再解决它。 :)
-
像往常一样,我想太多问题而不是解决方案。这些记录被分组,每组之间用空格隔开。我突然想到我可以将第一条记录放入一个数组中,然后检查该组中的下一条记录,以查找第一组中的每个字符。因此,如果“a”在第一组中,但没有来自该组中任何其他记录的记录,则它失败了。因此,在循环第一组时只需几个 %lookup 语句。我敢肯定这就像泥巴一样清楚,但我想出了办法。 :) 我正计划研究我所询问的原始问题。 :)
标签: arrays ibm-midrange rpgle