如何比较数组中重复的值,并将不重复的值删除???
本帖最后由 pchome2000 于 2009-12-28 21:10 编辑如何比较数组中重复的值,并将不重复的值删除??? 搜索! 并将不重复的值删除? 本帖最后由 pusofalse 于 2009-12-28 19:12 编辑
论坛已经有了“删除重复记录”的代码。这个删除不重复的则还是一样的思路,众多方法中,唯有正则和表驱动法是效率是最高的~ 正则不到家,先来个表驱动法~#include <Array.au3>
Local $aArray = ["a", "b", "c", "d", "e", "f", "a", "b", "c", "d"], $sVar
Local $sRandomSep = Random(1, 1000) & Random(2000, 3000) & Random(4000, 5000)
For $i = 0 To Ubound($aArray) - 1
If Not IsDeclared(".." & $aArray[$i]) Then
Assign(".." & $aArray[$i], $i)
Else
Assign("??" & $i, 0)
If Not IsDeclared("??" & Eval(".." & $aArray[$i])) Then
Assign("??" & Eval(".." & $aArray[$i]), 0)
EndIf
EndIf
Next
For $i = 0 To Ubound($aArray) - 1
If Not IsDeclared("??" & $i) Then ContinueLoop
$sVar &= $aArray[$i] & $sRandomSep
Next
$sVar = StringRegExp($sVar, "(?U)(.*)" & $sRandomSep, 3)
_Arraydisplay($sVar)
楼上的高手,佩服!
页:
[1]