This question already has an answer here:
- Difference between \n and \r? 9 answers
I need to ask about the difference in a string between \r\n , \r and \n
how is a string affected by each?
I have to replace the occurrences of \r\n and \r with \n but I cannot get how are they different in a string ...
i know that \r is like hitting enter \n is for a new line
All 3 of them represent the end of a line. But...
\r (Carriage Return) - moves the cursor to the beginning of the line without advancing to the next line
\n (Line Feed) - moves the cursor down to the next line without returning to the beginning of the line - In a *nix environment \n moves to the beginning of the line.
\r\n (End Of Line) - a combination of \r and \n
They are normal symbols as 'a' or 'ю' or any other. Just (invisible) entries in a string. \r moves cursor to the beginning of the line. \n goes one line down.
As for your replacement, you haven't specified what language you're using, so here's the sketch:
someString.replace("\r\n", "\n").replace("\r", "\n")
A carriage return (
\r
) makes the cursor jump to the first column (begin of the line) while the newline (\n
) jumps to the next line and eventually to the beginning of that line. So to be sure to be at the first position within the next line one uses both.\r = CR (Carriage Return) // Used as a new line character in Mac OS before X
\n = LF (Line Feed) // Used as a new line character in Unix/Mac OS X
\r\n = CR + LF // Used as a new line character in Windows