Normalize line endings

JavaScript, String, Regexp · Oct 21, 2020

Normalizes line endings in a string.

  • Use String.prototype.replace() and a regular expression to match and replace line endings with the normalized version.
  • Omit the second argument, normalized, to use the default value of '\r\n'.
const normalizeLineEndings = (str, normalized = '\r\n') =>
  str.replace(/\r?\n/g, normalized);
normalizeLineEndings('This\r\nis a\nmultiline\nstring.\r\n');
// 'This\r\nis a\r\nmultiline\r\nstring.\r\n'
normalizeLineEndings('This\r\nis a\nmultiline\nstring.\r\n', '\n');
// 'This\nis a\nmultiline\nstring.\n'

Written by Angelos Chalaris

I'm Angelos Chalaris, a JavaScript software engineer, based in Athens, Greece. The best snippets from my coding adventures are published here to help others learn to code.

If you want to keep in touch, follow me on GitHub.

More like this

  • Join URL segments

    Joins all given URL segments together, then normalizes the resulting URL.

    JavaScript, String · Oct 22, 2020

  • Split into lines

    Splits a multiline string into an array of lines.

    JavaScript, String · Oct 22, 2020

  • String to slug

    Converts a string to a URL-friendly slug.

    JavaScript, String · Oct 4, 2020