Main Content

strcat

Concatenate strings horizontally

Description

example

s = strcat(s1,...,sN) horizontally concatenates the text in its input arguments. Each input argument can be a character array, a cell array of character vectors, or a string array.

  • If any input is a string array, then the result is a string array.

  • If any input is a cell array, and none are string arrays, then the result is a cell array of character vectors.

  • If all inputs are character arrays, then the result is a character array.

For character array inputs, strcat removes trailing ASCII whitespace characters: space, tab, vertical tab, newline, carriage return, and form feed. For cell array and string array inputs, strcat does not remove trailing white space.

For faster performance and to preserve trailing whitespace characters, use append.

Examples

collapse all

Create two character vectors. Use strcat to horizontally concatenate the two vectors.

s1 = 'Good';
s2 = 'morning';
s = strcat(s1,s2)
s = 
'Goodmorning'

Create two cell arrays of character vectors. Use strcat to horizontally concatenate the elements of the two cell arrays.

s1 = {'abcde','fghi'};
s2 = {'jkl','mn'};
s = strcat(s1,s2)
s = 1x2 cell
    {'abcdejkl'}    {'fghimn'}

Create two cell arrays of character vectors. Create a scalar cell array containing the character vector ','. Use strcat to horizontally concatenate the elements of the two cell arrays and the cell scalar.

firstnames = {'Abraham'; 'George'};
lastnames = {'Lincoln'; 'Washington'};
commas = {', '};
names = strcat(lastnames, commas, firstnames)
names = 2x1 cell
    {'Lincoln, Abraham'  }
    {'Washington, George'}

Concatenate text with the strcat function. Note that when concatenated in this way the output string will insert a whitespace character between the input strings.

str1 = ["John ","Mary "];
str2 = ["Smith","Jones"];
str = strcat(str1,str2)
str = 1x2 string
    "John Smith"    "Mary Jones"

Strings and character vectors can be combined using strcat. When concatenating strings with character vectors a whitespace will not be added. Concatenate a character vector onto each element of the string array.

str3 = strcat(str,', M.D.')
str3 = 1x2 string
    "John Smith, M.D."    "Mary Jones, M.D."

To combine strings and character vectors, consider using + instead.

str4 = str + ', M.D.'
str4 = 1x2 string
    "John Smith, M.D."    "Mary Jones, M.D."

Input Arguments

collapse all

Input text, specified as character arrays, cell arrays of character vectors, or string arrays. When combining string or cell arrays with character arrays, the string or cell arrays must be either scalars or column vectors with the same number of rows as the character arrays.

Data Types: char | cell | string

Alternative Functionality

  • The append function can be used in place of strcat to preserve trailing whitespace characters.

  • Character arrays also can be concatenated using left and right square brackets.

    s1 = 'Good ';
    s2 = 'Morning';
    s = [s1 s2]
    
    s =
    
    Good Morning

  • String arrays can also be concatenated using the + operator.

    s1 = "Good ";
    s2 = "Morning";
    s = s1 + s2
    s =
    
    Good Morning

Extended Capabilities

C/C++ Code Generation
Generate C and C++ code using MATLAB® Coder™.

Version History

Introduced before R2006a