假设有两个字符串 - PR-ACT-SOURCE-DETAIL-1 和 PR-ACT-SOURCE-DETAIL-2。我想比较这两个字符串并找出发现差异的位置。
我试图以这种方式处理这种情况 -
PERFORM VARYING N FROM 1 BY 1 UNTIL N > 5000
IF PR-ACT-SOURCE-DETAIL-1 OF TRANSACTION-RECORD-1(N:1)
IS NOT EQUAL TO
PR-ACT-SOURCE-DETAIL-2 OF TRANSACTION-RECORD-2(N:1)
MOVE 'Y' TO WS-DIFF-FOUND
DISPLAY 'DIFFERENCE FOUND AT POSITION' N
END-IF
END-PERFORM
上面代码的问题是执行循环发生了 5000 次,如果我需要比较这样的 10,000 个字符串,那么执行时间就会变得太长。
有没有其他方法可以做同样的事情,需要更少的执行时间。