diffコマンドのような文字列の差分を比較するプロシージャがCOM.CURLAP.LIB.UTILパッケージに含まれます。
これは以下のサンプルように利用することができます。
{diff “map”, “apple”, {fn ses, o, n, p1, p2 => {switch ses case ShortestEditScript.common do {output “common:” & o} case ShortestEditScript.added do {output “appended:” & n} case ShortestEditScript.deleted do {output “deleted:” & o} } } } |
比較する引数を第1と第2引数に指定し、比較した1文字ごとに第3引数のプロシージャが実行されます。このプロシージャの1個目の引数で、2つの文字列内で共通した文字か、削除されたものか、追加されたものかを判断できます。このサンプルの場合、apが共通、mが削除、pleが追加された文字と認識されます
注意)バージョン0.7からサポート