找回密码
 加入
搜索
查看: 2319|回复: 5

[系统综合] 询问一个两个数组比较的问题,最终得到比较后删除后余下的数组

  [复制链接]
发表于 2015-3-13 21:14:13 | 显示全部楼层 |阅读模式
本帖最后由 sex123 于 2015-3-13 21:19 编辑

假设有两个数组
$cnLinkoutAll 和 $black
分别存有不同的内容文字,例如
$cnLinkoutAll 存有以下文字
EBSCO
Bentham Science Publishers Ltd.
Molecular Vision
Example B
而$black数组存有以下文字
Gale Databases
EBSCO
ProQuest
Bentham Science Publishers Ltd.
Ingenta plc
也就是说$black是黑名单数组。$cnLinkoutAll 是待筛选数组。

问题来了》请问,怎么把$cnLinkoutAll 中存有的黑名单删除,即删除$cnLinkoutAll 当中的
EBSCO
Bentham Science Publishers Ltd.
而最后保留黑名单数组中没有的文字,即保留Molecular Vision和Example B。
 楼主| 发表于 2015-3-15 12:25:49 | 显示全部楼层
这个我用倒序删除的方法搞定了,因为第一个数组里面是一对一对出现的,第一位是链接,第二位是文字,第三位是链接,第四位是对应的文字,挺麻烦的,最后只能倒着删除,还用step 2了,不过最后搞定了,谢谢楼上的几位了。
发表于 2015-3-14 03:24:37 | 显示全部楼层
本帖最后由 netegg 于 2015-3-14 03:35 编辑

[au3]#include<array.au3>
Dim $cnLinkoutAll[10] =[0,1,2,3,4,5,6,7,8,9]
Dim $black[4]=[0,1,4,7]
$num = UBound($black)
_ArrayConcatenate($black, $cnLinkoutAll)
$black = _arrayunique($black)
_ArrayDelete($black, 0)
_ArrayReverse($black)
ReDim $black[UBound($black) - $num]
_ArrayReverse($black)
_arraydisplay($black)

[/au3]

评分

参与人数 1金钱 +10 收起 理由
hnfeng + 10 虽然我看不懂,但是经比较多个UDF,这个最快 ...

查看全部评分

发表于 2015-3-13 21:36:11 | 显示全部楼层
#Include <Array.au3>
Dim $cnLinkoutAll[10] =[0,1,2,3,4,5,6,7,8,9]
Dim $black[4]=[0,1,4,7]
Dim $n = 0
_ArrayDisplay($cnLinkoutAll,'删除之前')
For $i = 0 To 9
        For $j = 0 To 3
                If $cnLinkoutAll[$i-$n] = $black[$j] Then 
                        _ArrayDelete($cnLinkoutAll,$i-$n)
                        $n += 1
                        ExitLoop
                EndIf
        Next
Next
_ArrayDisplay($cnLinkoutAll,'删除之后')
发表于 2015-3-14 00:42:38 | 显示全部楼层
[au3]#include<array.au3>
Dim $cnLinkoutAll[10] =[0,1,2,3,4,5,6,7,8,9]

Dim $black[4]=[0,1,4,7]
$num = UBound($black)
_ArrayConcatenate($black, $cnLinkoutAll)
$black = _arrayunique($black)
For $i = $num To 0 Step -1
        _arraydelete($black, $i)
Next
_arraydisplay($black)

[/au3]

评分

参与人数 1金钱 +20 收起 理由
tryhi + 20 很棒的见解

查看全部评分

发表于 2015-3-14 22:04:51 | 显示全部楼层

评分

参与人数 1金钱 -20 收起 理由
afan -20 警告,禁止纯表情!

查看全部评分

您需要登录后才可以回帖 登录 | 加入

本版积分规则

QQ|手机版|小黑屋|AUTOIT CN ( 鲁ICP备19019924号-1 )谷歌 百度

GMT+8, 2024-11-17 16:54 , Processed in 0.079167 second(s), 25 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表