Компьютерный форум 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=296148)

microvision 27-02-2015 15:17 2476679

Удалить всё, что после запятой и запятую.
 
Здравствуйте.
есть текстовый файл вида:

03945803945,bsdjhhsbf=jsf+
87465387456,shd/gfjshgfjsh
87345938782,isduyrwiuhfd?

нужно удалить всё, что идет после запятой, включая саму запятую.
кол-во знаков после запятой разное.
находил на форуме похожие темы, но сам доделать не могу :(
помогите, пожалуйста, с кодом! спасибо!

Georgio 27-02-2015 15:54 2476700

Код:

@for /f "delims=," %%i in ('type "example.txt"^& del "example.txt"') do @echo %%i>>"example.txt"

Freddy1984 27-07-2019 23:57 2881640

Здравствуйте! Всё тоже самое, только после запятой удалить один символ (в моём случае пробел). Подскажите пожалуйста как это сделать?
Спасибо.

megaloman 28-07-2019 05:25 2881646

Freddy1984, вот готовое решение vbs. Изменение на уровне исходных данных: прописать путь к файлу и
Код:

Fin = ", "
Rep = ","

Если основываться на предыдущем решении (класс!):
Цитата:

Цитата Georgio
@for /f "delims=," %%i in ('type "example.txt"^& del "example.txt"') do @echo %%i>>"example.txt" »

то можно сделать так:
Код:

@Echo Off
        Set "FileIn=Z:\Box_IN\example.txt"
        Set "Fin=, "
        Set "Rep=,"
        @for /f "delims=" %%i in ('type "%FileIn%"^& del "%FileIn%"') do (
                Set "aa=%%i"
                >>"%FileIn%" (Call echo %%aa:%Fin%=%Rep%%%)
        )

Не зная, какие символы содержатся в тексте, трудно прогнозировать, насколько корректно это отработает.
На большом файле получим большие затраты по времени, в отличие от VBS.


Время: 17:58.

Время: 17:58.
© OSzone.net 2001-