01.10.2015 14:30
OlegON
 
В общем, коллега обратился с вопросом, как можно вырезать перевод строки, оставив стандартный CR+LF? Суть - файл текстовый, который надо перенести в эксль. Причём, в некоторых полях есть CR, что сильно меняет итоговое. В Линуксе не проблема, но тут винда.
01.10.2015 14:39
baggio
 
в блокноте...
ctrl+h заменить "CR+LF" на "абракадабра"
ctrl+h заменить "CR" на ""
ctrl+h заменить "абракадабра" на "CR+LF"
01.10.2015 14:42
Ferus
 
Цитата:
OlegON В общем, коллега обратился с вопросом, как можно вырезать перевод строки, оставив стандартный CR+LF? Суть - файл текстовый, который надо перенести в эксль. Причём, в некоторых полях есть CR, что сильно меняет итоговое. В Линуксе не проблема, но тут винда.
Могу написать утилитку за полчасика, если очень нужно(если не для одного раза). Но только завтра к обеду время появится.
Задача как я понял, вырезать CR не трогая CRLF?
В итоге получим что-то типа convert.exe file.txt
01.10.2015 17:11
OlegON
 
Да, спасибо, теперь это теоретическая задача. Коллега спросил, я под виндой-то и спасовал... Он ушел вручную колбасить, а вопрос остался.

Поясню, речь идёт не о буквенном сочетании, а о переводе строки и возврате каретки. Без того, чтобы костыли писать винда это не умеет?
01.10.2015 17:18
grannie
 
Поиск с заменой в FAR'е и подобном? (Без нормального файлового менеджера под виндой всё равно делать нечего. А поставлять его в комплекте - "антимонопольщики" завоют)
01.10.2015 17:28
vdm
 
Если посчитать vbscript и/или powershell стандартной частью винды - то умеет. Но скрипт рисовать самостоятельно
01.10.2015 17:34
KirillHome
 
Notepad ++

Цитата:
In Extended, special character sequences will be interpreted as special characters such as newline characters. In this case, you can choose from:
\\ - Backslash character;
\t – TAB character;
\r – CR character;
\n – LF character;
\0 – NULL character;
\x## - Hexadecimal value (between 00 and FF);
\u#### - Extended hexadecimal value (between 0000 and FFFF, meant for Unicode characters);
\d### - Decimal value (between 000 and 255);
\o### - Octal value (between 000 and 377);
\b######## - Binary value (between 00000000 and 11111111).
01.10.2015 17:57
OlegON
 
О, а фар или ноут++ могут регекспы? Или как вырезать только одиночный cr?
01.10.2015 18:09
KirillHome
 
В Notepad++, к сожалению - либо Extended, либо Regular expression

Хотя, возможно я просто не понял Regular. В вроде бы указана работа и с Control characters

Цитата:
Control characters
\a
The BEL control character 0x07 (alarm).
\b
The BS control character 0x08 (backspace). This is only allowed inside a character class definition. Otherwise, this means "a word boundary".
\e
The ESC control character 0x1B.
\f
The FF control character 0x0C (form feed).
\n
The LF control character 0x0A (line feed). This is the regular end of line under Unix systems.
\r
The CR control character 0x0D (carriage return). This is part of the DOS/Windows end of line sequence CR-LF, and was the EOL character on Mac 9 and earlier. OSX and later versions use \n.
\R
Any newline character.
\t
The TAB control character 0x09 (tab, or hard tab, horizontal tab).
01.10.2015 18:16
OlegON
 
о, почему к сожалению? круто! получается надо было брать его в зубы и менять \r^\n на пробел
эээ, ну вроде того, как я написал - нельзя.
Часовой пояс GMT +3, время: 21:08.

Форум на базе vBulletin®
Copyright © Jelsoft Enterprises Ltd.
В случае заимствования информации гипертекстовая индексируемая ссылка на Форум обязательна.