Characters and Strings

Text in character arrays and string arrays

Character arrays and string arrays provide storage for text data in MATLAB®.

  • A character array is a sequence of characters, just as a numeric array is a sequence of numbers. A typical use is to store short pieces of text as character vectors, such as c = 'Hello World'.

  • A string array is a container for pieces of text. String arrays provide a set of functions for working with text as data. Starting in R2017a, you can create strings using double quotes, such as str = "Greetings friend". To convert data to string arrays, use the string function.

For more information, see Text in String and Character Arrays or watch Using String Arrays for Text Data.


expand all

String Arrays

stringString array
stringsCreate string array with no characters
joinCombine strings

Character Arrays

charCharacter array
cellstrConvert to cell array of character vectors
blanksCreate character array of blanks
newlineCreate newline character

Character or String Arrays

composeFormat data into multiple strings
sprintfFormat data into string or character vector
strcatConcatenate strings horizontally
appendCombine strings

Convert Input Arguments

convertCharsToStringsConvert character arrays to string arrays, leaving other arrays unaltered
convertStringsToCharsConvert string arrays to character arrays, leaving other arrays unaltered
convertContainedStringsToCharsConvert string arrays at any level of cell array or structure

Convert Between Numeric and Strings

doubleDouble-precision arrays
stringString array
str2doubleConvert strings to double precision values
num2strConvert numbers to character array

Data Type

ischarDetermine if input is character array
iscellstrDetermine if input is cell array of character vectors
isstringDetermine if input is string array
isStringScalar Determine if input is string array with one element

Text Properties

strlengthLengths of strings
isstrpropDetermine which characters in input strings are of specified category
isletterDetermine which characters are letters
isspaceDetermine which characters are space characters


containsDetermine if pattern is in strings
matchesDetermine if pattern matches strings
countCount occurrences of pattern in strings
endsWithDetermine if strings end with pattern
startsWithDetermine if strings start with pattern
strfindFind strings within other strings
sscanfRead formatted data from strings


replaceFind and replace one or more substrings
replaceBetweenReplace substrings between start and end points
strrepFind and replace substrings
joinCombine strings
splitSplit strings at delimiters
splitlinesSplit strings at newline characters
strjoinJoin strings in array
strsplitSplit string or character vector at specified delimiter
strtokSelected parts of strings
eraseDelete substrings within strings
eraseBetweenDelete substrings between start and end points
extractAfterExtract substrings after specified positions
extractBeforeExtract substrings before specified positions
extractBetweenExtract substrings between start and end points
insertAfterInsert strings after specified substrings
insertBeforeInsert strings before specified substrings
padAdd leading or trailing characters to strings
stripRemove leading and trailing characters from strings
lowerConvert strings to lowercase
upperConvert strings to uppercase
reverseReverse order of characters in strings
deblankRemove trailing whitespace from ends of strings
strtrimRemove leading and trailing whitespace from strings
strjustJustify strings
strcmpCompare strings
strcmpiCompare strings (case insensitive)
strncmpCompare first n characters of strings (case sensitive)
strncmpiCompare first n characters of strings (case insensitive)
regexpMatch regular expression (case sensitive)
regexpiMatch regular expression (case insensitive)
regexprepReplace text using regular expression
regexptranslateTranslate text into regular expression


Text in String and Character Arrays

Store and manipulate text using either string arrays or character arrays.

Update Your Code to Accept Strings

Adopt string arrays as a text data type in your own code, following these guidelines.

Analyze Text Data with String Arrays

This example shows how to analyze text data with string arrays. It shows how to store, split, and sort text, and how to compute and collect statistics for text in a string array.

Formatting Text

Compose character arrays or string arrays that include ordinary text and data formatted to your specification.

Hexadecimal and Binary Values

Specify hexadecimal and binary values either as literals or as text. Hexadecimal and binary literals are stored as integers. You can convert text representing hexadecimal and binary values to numbers, and numbers to text representations.

Unicode and ASCII Values

MATLAB stores all characters as Unicode characters. Both strings and character vectors use the same encoding. You can convert characters to their Unicode code values, and numbers to characters.

Regular Expressions

Regular expressions are a versatile way to search and replace text.