Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  

Показать сообщение отдельно

Аватара для gregaz

Пользователь


Сообщения: 88
Благодарности: 19

Профиль | Отправить PM | Цитировать


А можно так :
Код: Выделить весь код
#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')

Отправлено: 20:42, 11-02-2010 | #9