А можно так :
Код:
#include <file.au3>
#include <Array.au3>
; Создание файла данных
If Not FileExists (@ScriptDir & '\' & 'Test1.dat') Then
$sStringList= '00:14:41 11.02.2010 188.19.36.242' & @CRLF & _
'11:14:41 05.02.2010 188.19.36.242' & @CRLF & _
'07:29:22 11.02.2010 90.151.234.113' & @CRLF & _
'07:42:37 11.02.2010 94.51.71.82' & @CRLF & _
'01:25:34 10.02.2010 94.51.71.82' & @CRLF
$file = FileOpen("Test1.dat", 1)
FileWrite ( $file, $sStringList )
FileClose($file)
EndIf
; Чтение из файла в строку
$file = FileOpen("Test1.dat", 0)
$sStr=FileRead ( $file , FileGetSize ( "Test.dat" ) )
MsgBox(0,'$sStr',$sStr)
;-Получение массива строк с совпавшими IP
Dim $aDouble[1]
For $i=1 To _FileCountLines("Test1.dat")
$sLine= FileReadLine ( $file, $i )
$sPattern='^\S+\s+\S+\s+(\S+)$'
$IP=StringRegExpReplace ( $sLine, $sPattern, "\1")
$sPattern='\n?.*' & $IP
$aArray=StringRegExp ( $sStr, $sPattern,3 )
If UBound($aArray) >1 Then
For $j=1 To UBound($aArray)-1
; Здесь можно произвести запись дублей в др. файл
_ArrayAdd($aDouble,$aArray[$j])
Next
EndIf
Next
FileClose($file)
_ArrayDisplay($aDouble,'$aDouble')