|
Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - Удаление всех пробельных символов в текстовых файлах. |
|
|
CMD/BAT - Удаление всех пробельных символов в текстовых файлах.
|
Пользователь Сообщения: 104 |
Профиль | Отправить PM | Цитировать
Нужно удалить все пробелы + возможный перевод каретки и в некоторых случаях переносы строк(так как, кое-где это тоже самое).
Есть большое количество текстовых файлов с пробелами в папке. Нужно удалить все пробелы и т.д. из содержимого. т.е. пробел текст пробел текст пробел пробел текст пробел текст пробел пробел текст пробел текст пробел пробел текст пробел текст пробел пробел надо: текст текст текст текст здесь строка не пустая,её просто нет,точнее не должно быть. Есть код: но где-то в нём ошибка..?? |
|
Отправлено: 19:52, 21-10-2020 |
Ветеран Сообщения: 2708
|
Профиль | Отправить PM | Цитировать .vbs скрипт
MyDir = "Z:\Box_In" MyMask = "^.*\..*$" Set Reg = CreateObject("VBScript.RegExp") Reg.IgnoreCase = True Reg.Pattern = MyMask With CreateObject("Scripting.FileSystemObject") Set Files = .GetFolder(MyDir).Files For Each File In Files Filename = File.Path If Reg.Test(Filename) Then Set fIn = .OpenTextFile(Filename, 1, False) On Error Resume Next Err.Number = 0 InTxt = fIn.ReadAll If Err.Number = 0 Then fIn.Close InTxt = Replace(InTxt, " ", "") Mas = Split(InTxt, vbCrLf) iMax = -1 For i = UBound(Mas) To LBound(Mas) Step -1 If Len(Mas(i)) <> 0 Then iMax = i Exit For End If Next Set fIn = .CreateTextFile(Filename, True) fIn.Close Set fIn = .OpenTextFile(Filename, 8, False) If iMax >= 0 Then For i = LBound(Mas) To iMax If Len(Mas(i)) <> 0 Then If i <> iMax Then fIn.WriteLine Mas(i) Else fIn.Write Mas(i) End If End If Next End If fIn.Close Else fIn.Close End If On Error GoTo 0 End If Next End With MsgBox "Done" |
------- Отправлено: 22:37, 22-10-2020 | #21 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Забанен Сообщения: 793
|
Цитата serg515:
Только вот тогда нужно иметь в виду, что POSIX [:space:] на самом деле BRE представление ASCII [ \t\r\n\v\f] (или в краткой записи - \s). В переводе на матерный русский это означает, что в том же ASCII пробел кодируется 32 чаром, а управляющая последовательность \n - 10. |
|
Последний раз редактировалось greg zakharov, 22-10-2020 в 23:33. Отправлено: 23:25, 22-10-2020 | #22 |
Пользователь Сообщения: 104
|
Профиль | Отправить PM | Цитировать Цитата greg zakharov:
есть такой программный продукт zennoposter, там фичя,удаление пробелов. так вот там удаление происходит, вместе с переводом строк. |
|
Отправлено: 13:02, 23-10-2020 | #23 |
Ветеран Сообщения: 544
|
Профиль | Сайт | Отправить PM | Цитировать |
------- Отправлено: 16:46, 23-10-2020 | #24 |
Пользователь Сообщения: 104
|
Профиль | Отправить PM | Цитировать Цитата megaloman:
|
|
Отправлено: 16:02, 24-10-2020 | #25 |
|
Участник сейчас на форуме | Участник вне форума | Автор темы | Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
CMD/BAT - Удалить строку с ключевым набором символов во всех файлах в папке и всех подпапках. | BerryMOR | Скриптовые языки администрирования Windows | 6 | 20-06-2019 18:26 | |
CMD/BAT - [решено] удаление части строк из всех текстовых файлов в папке | icq99999999 | Скриптовые языки администрирования Windows | 4 | 06-11-2013 07:19 | |
CMD/BAT - Удалить определенные строки в текстовых файлах | Seryoga204 | Скриптовые языки администрирования Windows | 0 | 05-08-2012 14:53 | |
Любой язык - удаление всех символов кроме шаблона | gendalf | Скриптовые языки администрирования Windows | 3 | 19-07-2012 16:21 | |
Сортировщик строк в текстовых файлах. | borison | Программное обеспечение Windows | 2 | 04-02-2007 10:22 |
|