我觉得这是一个简单的问题,但我一生都无法解决这个问题。
上下文是我有一个 XML 提取器,令人沮丧的是,它必须处理结构中几个级别的大多数(除了一行)冗余条目的 n 元组。 我试图找到那些“重复”条目,并在将它们导入到更大的表中之前检查它们是否确实重复。 我已经检查了重复次数,但我在让嵌套的 for/if 循环工作时遇到了可怕的时间。 事实上,如果我将 Eval( Eval Expr(....Expr())) 嵌套在错误的位置,则循环始终会导致整个软件崩溃。 我不确定为什么会这样,我想知道我是否只是误解了如何使用该结构。
我想这也可能是使用 char() 和 concatenate90 相互嵌套的问题,尽管我再次不确定为什么会这样。 我下面的当前代码会使软件崩溃。
colnames = dt << Get Column Names( String );
show(colnames);
reps = 0;
show(reps);
For( i = 1, i <= N Items( colnames), i++,
reps = Sum( reps, Contains(colnames[i], "Data - Common Counting Time")); show(reps)
);
check = 0;
//Repeats that split columns
colnamecount = "Scan Append Number_4"; //Using a file that only has three of these columns, so show(colnamecount) = *_4 means its not going past that first if statment
If( reps> 1,
For( i = 2, i = reps, i++,
Eval(Eval Expr(colnamecount = Concat("Scan Append Number_", Char(Expr(i))))); //This is the issue
If(dt:{"Scan Append Number_1"}[1] == Column( colnamecount )[1],
check = check + 1,
check = check + 12
)
)
);
show(check);不管怎样,代码都不起作用,但直到我能得到 If 语句,将具有串联名称的列与 n 元组中的第一个列进行比较,这并不重要,首先我需要让串联工作并不崩溃jsl。
有人有什么想法吗? 我只是在语法方面很愚蠢吗?