Цитата akvarel_ps:
Крупные - около 1500 строк »
|
Да ну, это копейки. Я предполагал, что речь идёт о сотнях мегабайт.
Цитата akvarel_ps:
Способ - через np++ плагин, скрипт на питоне. Собсна, из-за питона и медленно) »
|
Такого быть не должно. В принципе.
Вот Вам пример кода на WSH, набросанного на скорую руку на коленке, без каких-либо проверок, который на первом Вашем примере делает указанную замену:
Скрытый текст
Код:

Option Explicit
Dim strSourceFile
Dim objFSO
Dim objRegExp
Dim strContent
strSourceFile = "C:\Мои проекты\0157\Source.txt"
Set objFSO = WScript.CreateObject("Scripting.FileSystemObject")
Set objRegExp = WScript.CreateObject("VBScript.RegExp")
With objRegExp
.Pattern = "^(param="".+"")\s+preset="".+""\s+(shell="".+"")$"
.Global = True
.MultiLine = True
.IgnoreCase = True
End With
With objFSO.OpenTextFile(strSourceFile)
strContent = .ReadAll()
.Close
End With
If objRegExp.Test(strContent) Then
strContent = objRegExp.Replace(strContent, "$2 $1")
With objFSO.CreateTextFile(objFSO.BuildPath(objFSO.GetParentFolderName(strSourceFile), "Result.txt"), True)
.Write strContent
.Close
End With
Else
WScript.Echo "Not found"
End If
WScript.Quit 0
Если задать ему файл из полутора тысяч строк, то время выполнения даже не заметишь. Если скормить ему файл из миллиона строк:
Скрытый текст
Код:

C:\Мои проекты\0157>find.exe /v "" /c Source.txt
---------- SOURCE.TXT: 1000188
(около сорока мегабайт, тупо продублированы три Ваших строки из образца) — время выполнения всё равно займёт меньше секунды (конечно, само содержимое файла уже было в дисковом кэше, понятно):
Скрытый текст
Код:

C:\Мои проекты\0157>0002.vbs
11.05.2018 17:26:59
11.05.2018 17:27:02
Так что, никак не в Python'е тут дело. Над чем там можно пыхтеть ажник целых три минуты на полутора-то тысячах строк — даже не представляю.