Войти

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


microvision
27-02-2015, 15:17
Здравствуйте.
есть текстовый файл вида:

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

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

Georgio
27-02-2015, 15:54
@for /f "delims=," %%i in ('type "example.txt"^& del "example.txt"') do @echo %%i>>"example.txt"

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

megaloman
28-07-2019, 05:25
Freddy1984, вот готовое решение vbs. (http://forum.oszone.net/post-2880574-20.html) Изменение на уровне исходных данных: прописать путь к файлу иFin = ", "
Rep = ","Если основываться на предыдущем решении (класс!):@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.




© OSzone.net 2001-2012