This is machine translation

Translated by Microsoft
Mouseover text to see original. Click the button below to return to the English version of the page.

Note: This page has been translated by MathWorks. Click here to see
To view all translated materials including this page, select Country from the country navigator on the bottom of this page.


Split strings at newline characters


newStr = splitlines(str)



newStr = splitlines(str) splits str at newline characters and returns the result as the output array newStr.

splitlines splits at actual newline characters, not at the literal \n. To split a string that contains \n, first use compose and then use splitlines.


collapse all

Split a string at a newline character. When the literal \n represents a newline character, convert it to an actual newline using the compose function. Then use splitlines to split the string at the newline character.

Create a string in which two lines of text are separated by \n. You can use + to concatenate text onto the end of a string. Starting in R2017a, you can create strings using double quotes.

str = "In Xanadu did Kubla Khan";
str = str + "\n" + "A stately pleasure-dome decree"
str = 
"In Xanadu did Kubla Khan\nA stately pleasure-dome decree"

Convert \n into an actual newline character. Although str displays on two lines, str is a 1-by-1 string containing both lines of text.

str = compose(str)
str = 
    "In Xanadu did Kubla Khan
     A stately pleasure-dome decree"

Split str at the newline character. newStr is a 1-by-2 string array. Each element contains one line of the text.

newStr = splitlines(str)
newStr = 2x1 string array
    "In Xanadu did Kubla Khan"
    "A stately pleasure-dome decree"

Create a character vector and split it at newline characters. The newline function returns the newline character, char(10).

chr = 'Whose woods these are I think I know.'; 
chr = [chr newline 'His house is in the village though;']
chr = 
    'Whose woods these are I think I know.
     His house is in the village though;'

C = splitlines(chr)
C = 2x1 cell array
    {'Whose woods these are I think I know.'}
    {'His house is in the village though;'  }

Input Arguments

collapse all

Input text, specified as a string array, a character vector, or a cell array of character vectors. If str is a string array or cell array of character vectors, then each element of str must contain the same number of newlines.

Output Arguments

collapse all

Output text, returned as a string array or a cell array of character vectors. newStr has one more dimension than str. The size of the new dimension is one more than the number of newlines in a string element. splitlines assigns the results of the split along the new dimension. For example, if str is a 2-by-3 string array, and each string has three newline characters, then newStr is a 2-by-3-by-4 array.

If the input array str is a string array, then so is newStr. Otherwise, newStr is a cell array of character vectors.


If the elements of a string array have different numbers of newline characters, use a for-loop to access the string elements individually and split them.

Extended Capabilities

Introduced in R2016b