[решено] Удалить все символы Enter (переход на след строку) из текста

Ответить
Аватара пользователя
sashadeg

[решено] Удалить все символы Enter (переход на след строку) из текста

Сообщение sashadeg »

Простенькая задачка. Но не нашел такой функции в разделе "обработка текста".

Как можно преобразовать весь текст в одну строку (конечно вместо Enter нужно вставить пробел)
Аватара пользователя
madmasles

Re: [решено] Удалить все символы Enter (переход на след строку) из текста

Сообщение madmasles »

kaster,

Объясни, пожалуйста, в чем разница между @CR & @LF и @CRLF.

Ведь в русской справке:
Цитата:



@CRLF = @CR & @LF ;требуется для завершения строк.
Аватара пользователя
kaster

Re: [решено] Удалить все символы Enter (переход на след строку) из текста

Сообщение kaster »

madmasles, да. по всей видимости ничем. я просто хотел учесть что строки могут биться не только по CRLF, но и по CR и LF по отдельности. но так не проканало. самое верное будет



Код:

Код: Выделить всё

StringRegExpReplace($sText, '[\r\n]', ' ')

вот к примеру



Код:

Код: Выделить всё

$sText = 'a b c' & @CRLF & 'fdfd fd f' & @CR & 'fdfdf fdf' & @LF & 'dsdsds'
MsgBox(0, '', StringRegExpReplace($sText, '[\r\n]', ' '))
Аватара пользователя
Sp01LeR

Re: [решено] Удалить все символы Enter (переход на след строку) из текста

Сообщение Sp01LeR »

Иногда(например при выводе страницы на web-сервере) в тексте идут перемешанные обрывы строк, типа @CR&@CR&@LF или @LF&@CR&@LF поэтому чтоб не было двойных пробелов, то лучше так:





Код:

Код: Выделить всё

$text=StringStripCR($text)
$text=StringReplace($text, @LF, " ")
$text=StringStripWS($text, 8)
Аватара пользователя
amel27

Re: [решено] Удалить все символы Enter (переход на след строку) из текста

Сообщение amel27 »

Цитата kaster:



хотел учесть что строки могут биться не только по CRLF, но и по CR и LF по отдельности. но так не проканало
[решено] Удалить все символы Enter (переход на след строку) из текста




плюсика не хватает... Изображение



Код:

Код: Выделить всё

StringRegExpReplace($sText, '[\r\n]+', ' ')
Аватара пользователя
timsky

Re: [решено] Удалить все символы Enter (переход на след строку) из текста

Сообщение timsky »

Если я не ошибаюсь насчет @CR и @LF, то одни юзаются на МАКах, другие на НИКСах, а в Винде сразу оба Изображение
Аватара пользователя
timsky

Re: [решено] Удалить все символы Enter (переход на след строку) из текста

Сообщение timsky »

timsky, Mac OS X уже юзает LF, как и Unix, Win сохранила изначальную систему, когда CR и LF обозначали разные команды для устройств последовательного вывода: CR - возврат каретки (курсора) на начало текущей строки, LF - перевод каретки (курсора) на следующую строку - кстати, это различие можно было применять с пользой при печати на матричных принтерах
Ответить

Вернуться в «AutoIt»