请教两个数组中去掉相同的字符串
现有A和B两个数组,A和B中有相同的字符串,通过哪个函数能把两个数组相减,去掉相同项,得到一个新的C数组. --------------------编程问答-------------------- 最原始的需求是什么?你的需求太复杂了,而且实际上没有必要,这样写代码会死人的。 --------------------编程问答-------------------- A:="A":"B":"C";B:="A1":"B":"D";
temp:="";
poets:=@Unique(A:B);
@For(
n:=1;n<=@Elements(poets);n:=n+1;
temp:=@If(
@IsMember(poets[n];A)&@IsMember(poets[n];B);temp;temp:poets[n]
)
);
@Trim(temp) --------------------编程问答-------------------- 如果不保留空字符数项的话可以使用@Trim(@replace(a;b;"")) or fulltrim(arrayreplace(a,b,"")) --------------------编程问答-------------------- 楼上的这种方法对头,ok的 --------------------编程问答-------------------- 与其从算法上解决,不如在设计时避免出现此类情况,如果数组大了,效率会非常低。 --------------------编程问答-------------------- dim c as Variant
c=split("")
c=arrayappend(c,A)
c=arrayappend(c,B)
c=FullTrim(arrayunique(c)) --------------------编程问答--------------------
修改为:
dim c as Variant
dim d as Variant
c=split("")
c=arrayappend(c,A)
c=arrayappend(c,B)
d=FullTrim(arrayunique(d))
c=FullTrim(arrayreplace(d,A,""))
c=arrayappend(c,FullTrim(arrayreplace(d,B,"")))
--------------------编程问答--------------------
应为:
d=FullTrim(arrayunique(c)) --------------------编程问答-------------------- 用Replace,方便实用
补充:企业软件 , Lotus