Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Скриптовые языки администрирования Windows (http://forum.oszone.net/forumdisplay.php?f=102)
-   -   Нумерация между строк (http://forum.oszone.net/showthread.php?t=345530)

seman 14-06-2020 15:20 2925044

Нумерация между строк
 
Все привет!

Имеется файл с текстом. как между строчками сделать нумерацию в Wordе
чтобы номерация была между строк а не на самой строке?

например
1
вапыарыварыапрыапрыапры
2
лотдлотржлдотрлот
3

okshef 14-06-2020 23:16 2925102

А можно узнать цель? Вы потом собираетесь что-то дописывать после номера или номер будет относиться к тексту под ним?

seman 27-06-2020 13:14 2926458

Цитата:

Цитата okshef
А можно узнать цель? Вы потом собираетесь что-то дописывать после номера или номер будет относиться к тексту под ним? »

У меня есть текстовый файл с субтитрами, он составлен некорректно, поэтому не отображаются во многих плеерах. В оригинальном шаблоне перед каждой строчкой установлена цифра - нумерация.
В ручную это делать нереально долго

okshef 27-06-2020 16:22 2926477

На мой взгляд, самым простым способом будет включить отображение непечатных знаков, тогда будут видны абзацы. Затем встать на пустой абзац, применить к нему нумерацию, выделить этот абзац, а после этого выбрать "метелку" (копировать форматирование) двойным щелчком и применить ко всем пустым абзацам.
Вполне возможно, что для большого количества строк этот процесс можно автоматизировать макросом, но в этом я вам не помогу.

Iska 28-06-2020 09:47 2926537

По-хорошему, надо поглядеть на этот файл:
Цитата:

Цитата seman
Имеется файл с текстом »


seman 08-07-2020 20:50 2927710

Вложений: 1
Цитата:

Цитата okshef
Вполне возможно, что для большого количества строк этот процесс можно автоматизировать макросом »

да, в ручную долго очень

Цитата:

Цитата Iska
По-хорошему, надо поглядеть на этот файл: »


Iska 09-07-2020 02:47 2927723

На WSH:
Скрытый текст
Код:

Option Explicit

Dim strSourceFile

Dim objFSO
Dim strContent

Dim iCount


If WScript.Arguments.Count = 1 Then
        strSourceFile = WScript.Arguments.Item(0)
       
        Set objFSO = WScript.CreateObject("Scripting.FileSystemObject")
       
        If objFSO.FileExists(strSourceFile) Then
                If StrComp(objFSO.GetExtensionName(strSourceFile), "srt", vbTextCompare) = 0 Then
                        With objFSO.OpenTextFile(strSourceFile)
                                strContent = .ReadAll()
                                .Close
                        End With
                       
                        With WScript.CreateObject("VBScript.RegExp")
                                .Pattern = "\n(\n\d{2}:\d{2}\.\d{3} --> \d{2}:\d{2}\.\d{3}\n)"
                               
                                If .Test(strContent) Then
                                        iCount = 0
                                       
                                        Do
                                                iCount = iCount + 1
                                                strContent = .Replace(strContent, vbLf & vbLf & CStr(iCount) & "$1")
                                        Loop While .Test(strContent)
                                       
                                        With objFSO.CreateTextFile(strSourceFile, True)
                                                .Write strContent
                                                .Close
                                        End With
                                Else
                                        WScript.Echo "Not found pattern in text."
                                        WScript.Quit 4
                                End if
                        End With
                Else
                        WScript.Echo "Need .srt file."
                        WScript.Quit 3
                End If
        Else
                WScript.Echo "Can't find source file [" & strSourceFile & "]."
                WScript.Quit 2
        End If
       
        Set objFSO = Nothing
Else
        WScript.Echo "Usage: cscript.exe //nologo """ & WScript.ScriptName & """ <Source file>"
        WScript.Quit 1
End If

WScript.Quit 0


Путь к исходному файлу задаётся параметром скрипта (также можно просто перетянуть .srt файл на скрипт в Проводнике).

seman 09-07-2020 18:40 2927812

Цитата:

Цитата Iska
Путь к исходному файлу задаётся параметром скрипта (также можно просто перетянуть .srt файл на скрипт в Проводнике) »

Спасибо, у меня с программированием плохо, мне нужно сохранить этот текст в блокноте?

Iska 11-07-2020 15:15 2927922

seman, сохраните приведённый код в файл с расширением .vbs. Затем используйте:
Цитата:

Цитата Iska
также можно просто перетянуть .srt файл на скрипт в Проводнике »



Время: 08:31.

Время: 08:31.
© OSzone.net 2001-