Timurko,
Цитата:
немного подправил, так чтобы лишние пробелы уберались и время выглядило такого формата \d\d (передача)
|
Ещё один цикл для этого вроде не нужен...
Цитата:
если в файле с программой присутствуют названия каналов то они тут просто удаляются
|
Можно проверять наличие формата времени:
Код:

#include <Array.au3>
#include <File.au3>
$String = FileRead(@ScriptDir & "\source1.txt")
Dim $aStrArray = StringSplit(StringStripCR($String), @LF)
Dim $aNewArray[1]
For $i = 1 To $aStrArray[0]
$sTVShow_Name = StringStripWS(StringRegExpReplace($aStrArray[$i], "((, |)\d\d:\d\d)", ""), 3)
$aTVShow_Time = StringRegExp($aStrArray[$i], "(\d\d:\d\d)", 3)
$iUbound = UBound($aTVShow_Time)-1
If $iUbound < 0 Then
$aNewArray[0] += 1
ReDim $aNewArray[$aNewArray[0] + 1]
$aNewArray[$aNewArray[0]] = $aStrArray[$i]
ContinueLoop
EndIf
For $j = 0 To $iUbound
$aNewArray[0] += 1
ReDim $aNewArray[$aNewArray[0] + 1]
$sSeperater = " - "
If StringLeft($sTVShow_Name, 1) = "-" Then $sSeperater = " "
$aNewArray[$aNewArray[0]] = StringStripWS($aTVShow_Time[$j], 3) & $sSeperater & $sTVShow_Name
Next
Next
_ArraySort($aNewArray, 0, 1)
_ArrayDisplay($aNewArray)
_FileWriteFromArray(@ScriptDir & "\dest1.txt", $aNewArray, 1)
gregaz,
Код:

Func WM_NOTIFY($hWnd, $iMsg, $iwParam, $ilParam)
Local $hWndFrom, $iIDFrom, $iCode, $tNMHDR, $hWndListView1, $hWndListView2
$hWndListView1 = $hListView1
$hWndListView2 = $hListView2
If Not IsHWnd($hListView1) Then $hWndListView1 = GUICtrlGetHandle($hListView1)
If Not IsHWnd($hListView2) Then $hWndListView2 = GUICtrlGetHandle($hListView2)
$tNMHDR = DllStructCreate($tagNMHDR, $ilParam)
$hWndFrom = HWnd(DllStructGetData($tNMHDR, "hWndFrom"))
$iIDFrom = DllStructGetData($tNMHDR, "IDFrom")
$iCode = DllStructGetData($tNMHDR, "Code")
Switch $hWndFrom
Case $hWndListView1 ;распознан первый список
ConsoleWrite("--> ListView 1 events here" & @LF)
;~ Switch $iCode
;~ Case ;;;
;~ EndSwitch
Case $hWndListView2 ;распознан второй список
ConsoleWrite("--> ListView 2 events here" & @LF)
;~ Switch $iCode
;~ Case ;;;
;~ EndSwitch
EndSwitch
Return $GUI_RUNDEFMSG
EndFunc ;==>WM_NOTIFY