Имя пользователя:
Пароль:
 | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - [решено] Автоматический поиск и замена текста в файле

Ответить
Настройки темы
CMD/BAT - [решено] Автоматический поиск и замена текста в файле

Новый участник


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

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


Есть файл где большой список слов на русском языке.
~14 000 строк.
Где слова могут повторяться.
Необходимо каждое слово или несколько слов заменять на свое число.
Есть второй файл где содержится список: строки вида- число слово -на пример( 14 День Трудящихся)
Необходимо в первом файле находить слова, и заменять их на соответствующие им число.
Прощу вашей помощи.

Отправлено: 16:39, 28-07-2019

 

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


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

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


Мне кажется что шансы что тебе помогут сильно возрастут если ты загрузишь на форум эти два файла.
ЗЫ: не забудь заархивировать.

Отправлено: 16:46, 28-07-2019 | #2



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Новый участник


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

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


Вложения
Тип файла: rar txt_file.rar
(1.8 Kb, 17 просмотров)

Прикрепил архив.
Файл по меньше сделал по кол-ву строк.

Отправлено: 17:00, 28-07-2019 | #3


Новый участник


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

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


Цитата megaloman:
Кстати, а как насчёт больших/маленьких букв? »
А что с ними?
Если нужно могу привести их к нижнему регистру.

Отправлено: 18:09, 28-07-2019 | #4


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


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

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


Вложения
Тип файла: rar txt_file_rar4 (2).rar
(1.9 Kb, 17 просмотров)

Попытка номер 2

Последний раз редактировалось Patroklos, 28-07-2019 в 18:59.

Это сообщение посчитали полезным следующие участники:

Отправлено: 18:19, 28-07-2019 | #5


Ветеран


Contributor


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

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


Patroklos, Спасибо. Открыл во второй попытке ...

-------
Даже самая сложная проблема обязательно имеет простое, лёгкое для понимания, неправильное решение. Каждое решение плодит новые проблемы.


Отправлено: 18:48, 28-07-2019 | #6


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


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

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


Был рад помочь.

Отправлено: 19:04, 28-07-2019 | #7


Ветеран


Contributor


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

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


Опыта с UTF у меня минимум. Не стреляйте в пианиста ...
Код: Выделить весь код
FileTxt = "Z:\Box_Arc\txt_file\1.txt"
FileNum = "Z:\Box_Arc\txt_file\2.txt"
FileOut = "Z:\Box_Arc\txt_file\1.rep.txt"

Delim=Chr(9)

With CreateObject("Scripting.FileSystemObject")
    With .OpenTextFile(FileTxt, 1, False)
        InTxt = .ReadAll
        .Close
    End With
    With .OpenTextFile(FileNum, 1, False)
        MasNum = Split(.ReadAll, vbCrLf)
        .Close
    End With

    For Each Fin In MasNum
        If Len(Fin) <> 0 Then
            i = InStr(1, Fin, Delim)
            If i <> 0 Then
                Rep = Mid(Fin, 1, i - 1)
                Fin = Mid(Fin, i + 1)
                InTxt = Replace(InTxt, Fin, Rep)
            End If
        End If
    Next
    
    With .OpenTextFile(FileOut, 2, True)
        .Write InTxt
        .Close
    End With
End With

MsgBox "Script done"
FileOut может совпадать с FileTxt
Задачу делал для предложенных образцов файлов

-------
Даже самая сложная проблема обязательно имеет простое, лёгкое для понимания, неправильное решение. Каждое решение плодит новые проблемы.


Последний раз редактировалось megaloman, 29-07-2019 в 10:02.

Это сообщение посчитали полезным следующие участники:

Отправлено: 21:40, 28-07-2019 | #8


Новый участник


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

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


megaloman, благодарю работает.
Попробовал на другом файле замена прошла хорошо, только одну строчку скрипт не заменил.
Но это не принципиально поправил руками.

Отправлено: 17:24, 29-07-2019 | #9


Ветеран


Contributor


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

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


Touch_,
Цитата:
только одну строчку скрипт не заменил.
Если это не разовая задача, надо бы разобраться, почему не заменил. Имхо, несоотаетствие текста справочнику, например, большие/маленькие буквы, или пробел лишний, или еще что-нибудь.

-------
Даже самая сложная проблема обязательно имеет простое, лёгкое для понимания, неправильное решение. Каждое решение плодит новые проблемы.


Отправлено: 17:55, 29-07-2019 | #10



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - [решено] Автоматический поиск и замена текста в файле

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
CMD/BAT - автоматический поиск и замена HEX в файлах Tosyk Скриптовые языки администрирования Windows 36 06-11-2021 05:49
CMD/BAT - Поиск и замена текста в файле Дмитрий_Кульгейко@vk Скриптовые языки администрирования Windows 20 12-07-2016 20:01
Любой язык - Сложная замена текста в файле niverprof Скриптовые языки администрирования Windows 11 22-12-2014 11:45
CMD/BAT - Поиск и удаление текста в файле ajakzs Скриптовые языки администрирования Windows 6 18-10-2012 09:18
[решено] Поиск и замена текста в файле TERMINAL AutoIt 6 16-03-2011 17:49




 
Переход