cellstr
Convert to cell array of character vectors
Description
Convert Arrays
Examples
Convert String Array to Cell Array
You can create string arrays to contain multiple pieces of text. However, you might need to use functions that accept cell arrays of character vectors as input arguments, and that do not accept string arrays. To pass data from a string array to such functions, use the cellstr
function to convert the string array to a cell array of character vectors.
Create a string array. You can create strings using double quotes.
A = ["Past","Present","Future"]
A = 1x3 string
"Past" "Present" "Future"
Convert the string array to a 1-by-3 cell array of character vectors.
C = cellstr(A)
C = 1x3 cell
{'Past'} {'Present'} {'Future'}
Convert Character Array to Cell Array
Create a character array. Include trailing spaces so that each row has the same length, resulting in a 3-by-4 array.
A = ['abc ';'defg';'hi ']
A = 3x4 char array
'abc '
'defg'
'hi '
class(A)
ans = 'char'
Convert the character array to a 3-by-1 cell array of character vectors.
C = cellstr(A)
C = 3x1 cell
{'abc' }
{'defg'}
{'hi' }
class(C)
ans = 'cell'
Convert Calendar Duration Array to Cell Array
Create a calendarDuration
array.
D = calmonths(15:17) + caldays(8) + hours(1.2345)
D = 1x3 calendarDuration
1y 3mo 8d 1h 14m 4.2s 1y 4mo 8d 1h 14m 4.2s 1y 5mo 8d 1h 14m 4.2s
Convert the array to a cell array of character vectors.
C = cellstr(D)
C = 1x3 cell
{'1y 3mo 8d 1h 14m 4.2s'} {'1y 4mo 8d 1h 14m 4.2s'} {'1y 5mo 8d 1h 14m 4.2s'}
class(C)
ans = 'cell'
Convert Localized Datetime
to Cell Array
Create a datetime
.
D = datetime
D = datetime
05-Sep-2024 15:21:15
Convert the datetime
to a character vector that is formatted and localized to france.
C = cellstr(D,'eeee, MMMM d, yyyy HH:mm:ss',"fr_FR")
C = 1x1 cell array
{'jeudi, septembre 5, 2024 15:21:15'}
Input Arguments
A
— Input array
array
Input array. The data type of A
determines how
cellstr
converts A
to a cell
array of character vectors.
Input Type | Conversion Notes | Sample Input | Sample Output |
---|---|---|---|
| Converts each element to a character vector and assigns it to a cell. If |
1×1 string array "foo" |
1×1 cell array {'foo'} |
1×2 string array "foo" "bar" |
1×2 cell array {'foo'} {'bar'} | ||
Character arrays | Assigns each row of the input to a cell.
|
2×3 char array 'foo' 'bar' |
2×1 cell array {'foo'} {'bar'} |
Categorical array | Converts each element of the input array to a character vector and assigns the vector to a cell in the new cell array. |
1x3 categorical array red green blue |
1×3 cell array {'red'} {'green'} {'blue'} |
D
— Date or duration array
datetime
array | duration
array | calendarDuration
array
Date or duration array, specified as a datetime
,
duration
, or calendarDuration
array. The data type of D
determines how
cellstr
converts A
to a cell
array of character vectors.
Input Type | Conversion Notes | Sample Input | Sample Output |
---|---|---|---|
| Converts each element to a character vector and assigns it to a cell. To specify a format and locale, see datefmt. |
|
1x1 cell array {'01-Jun-2020'} |
| Converts each element to a character vector and assigns it to a cell. To specify a format and locale, see datefmt. |
|
1x2 cell array {'05:12:21'} {'06:12:21'} |
| Converts each element to a character vector and assigns it to a cell. To specify a format and locale, see datefmt. |
|
1x1 cell array {'1y 3mo 8d 1h 14m 4.2s'} |
datefmt
— Date Format and Locale
character vectors | string scalars
Date format and locale, specified as separate character vectors or string
scalars. Input A
must be of type
datetime
, duration
, or
calendarDuration
.
If you do not specify a format, cellstr
uses the value
in the Format
property of A
.
Example: cellstr(A,"yyyy-MM-dd")
Example: cellstr(A,"dd:hh:mm:ss","en_US")
The supported formats depend on the data type of
A
.
datetime
formats can include combinations of units and delimiters, such as"yyyy-MMM-dd HH:mm:ss.SSS"
. For details, see the Format property fordatetime
arrays.duration
formats are either single characters (y
,d
,h
,m
, ors
) or one of these combinations:"dd:hh:mm:ss"
"hh:mm:ss"
"mm:ss"
"hh:mm"
Any of the above, with up to nine
S
characters to indicate fractional second digits, such as"hh:mm:ss.SSSS"
calendarDuration
formats can include combinations of the charactersy
,q
,m
,w
,d
, andt
in order from largest to smallest unit of time, such as"ym"
. For more information on theduration
andcalendarDuration
formats, see Set Date and Time Display Format.
locale
— Locale
character vector | string scalar
Locale, specified as one of these values:
"system"
, to specify your system locale.A string scalar in the form xx_YY, where xx is a lowercase ISO 639-1 two-letter code that specifies a language, and YY is an uppercase ISO 3166-1 alpha-2 code that specifies a country. For sample values, see the Locale name-value argument for the
datetime
function.
To specify only the locale, use an empty array as a placeholder for the
format, []
.
Example: cellstr(A, "yyyy-MM-dd","en_US")
Example: cellstr(A, [],"en_US")
The locale affects the language used to represent certain components of dates and times, such as month names. Valid values are:
This table lists some common values for the locale.
Locale | Language | Country |
---|---|---|
"de_DE" | German | Germany |
"en_GB" | English | United Kingdom |
"en_US" | English | United States |
"es_ES" | Spanish | Spain |
"fr_FR" | French | France |
"it_IT" | Italian | Italy |
"ja_JP" | Japanese | Japan |
"ko_KR" | Korean | Korea |
"nl_NL" | Dutch | Netherlands |
"zh_CN" | Chinese (simplified) | China |
Extended Capabilities
Tall Arrays
Calculate with arrays that have more rows than fit in memory.
The
cellstr
function fully supports tall arrays. For more information,
see Tall Arrays.
C/C++ Code Generation
Generate C and C++ code using MATLAB® Coder™.
Usage notes and limitations:
In generated code, this function supports categorical arrays. For more information, see Code Generation for Categorical Arrays (MATLAB Coder) and Categorical Array Limitations for Code Generation (MATLAB Coder).
cellstr
supports character arrays, and string as input. See, Code Generation for Strings (MATLAB Coder)
Thread-Based Environment
Run code in the background using MATLAB® backgroundPool
or accelerate code with Parallel Computing Toolbox™ ThreadPool
.
This function fully supports thread-based environments. For more information, see Run MATLAB Functions in Thread-Based Environment.
Distributed Arrays
Partition large arrays across the combined memory of your cluster using Parallel Computing Toolbox™.
This function fully supports distributed arrays. For more information, see Run MATLAB Functions with Distributed Arrays (Parallel Computing Toolbox).
Version History
Introduced before R2006a
MATLAB Command
You clicked a link that corresponds to this MATLAB command:
Run the command by entering it in the MATLAB Command Window. Web browsers do not support MATLAB commands.
Select a Web Site
Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: .
You can also select a web site from the following list
How to Get Best Site Performance
Select the China site (in Chinese or English) for best site performance. Other MathWorks country sites are not optimized for visits from your location.
Americas
- América Latina (Español)
- Canada (English)
- United States (English)
Europe
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)
Asia Pacific
- Australia (English)
- India (English)
- New Zealand (English)
- 中国
- 日本Japanese (日本語)
- 한국Korean (한국어)