How to Split String By New Line in Typescript?

    When working with strings in TypeScript, I was required to split string by a new line in Typescript. In this TypeScript tutorial, I will explain how to do this.

    Different operating systems represent new lines with different characters. Windows uses a carriage return followed by a line feed (\r\n), while Unix-based systems, including Linux and macOS, use just a line feed (\n).

    Example 1: Split a Simple Multiline String in Typescript

    Let’s start with a simple example; below is a simple multiline string in Typescript separated by new lines:

    const names = `Robert Doe
    Jane Smith
    Michael Johnson
    Emily Davis`;

    To split this string into an array of names, we can use the split() method with a regular expression that matches both \r\n and \n.

    const nameArray = names.split(/\r?\n/);
    console.log(nameArray);

    In this example, the regular expression /\r?\n/ matches a carriage return (\r) followed by a line feed (\n), or just a line feed (\n) on its own.

    Here is the complete code:

    const names = `Robert Doe
    Jane Smith
    Michael Johnson
    Emily Davis`;
    const nameArray = names.split(/\r?\n/);
    console.log(nameArray);

    You can see the output after I executed the code using VS code.

    Split String By New Line in Typescript

    Example 2: Splitting a String with Mixed New Line Characters

    Now, let’s consider a more complex example where the input string could contain a mix of Windows and Unix-style new lines:

    const mixedNames = `Christopher Walker\r\nLaura Brown\nKevin Miller\r\nRachel Green`;

    We can use the same approach as in the first example to split this string:

    const mixedNameArray = mixedNames.split(/\r?\n/);
    console.log(mixedNameArray);

    Even though the mixedNames string contains both types of new line characters, the regular expression /\r?\n/ ensures that the string is split correctly.

    After I executed the code, you can see the output in the screenshot below:

    How to Split String By New Line in Typescript

    Example 3: Handling Empty Lines

    There will be scenarios where you will have empty lines in a string in Typescript. Here is a how to handle empty lines in Typescript.

    const namesWithEmptyLines = `Alice Johnson
    
    Bob Lee
    Carol King
    
    Derek Hale`;

    To split this string and remove any empty lines from the resulting array, you can chain the split() method with filter():

    const namesWithoutEmptyLines = namesWithEmptyLines.split(/\r?\n/).filter(name => name.trim() !== '');
    console.log(namesWithoutEmptyLines);

    Here, the filter() method is used to remove any strings that are empty after being trimmed of whitespace.

    Conclusion

    Splitting a string by new line characters in TypeScript can be achieved using the split() method with a regular expression. I hope, now you got an idea of how to split a string by new line characters in Typescript using various methods.

    You may also like:

    >