Matlab:字符向量元胞数组
创始人
2024-04-06 17:04:43
0

Matlab:字符向量元胞数组

  • 创建字符向量元胞数组
  • 访问元胞数组中的字符向量
  • 将元胞数组转换为字符串数组

要将文本存储为字符向量,请将其用单引号引起来。通常,字符向量包含您视为单个信息片段的文本,例如文件名或图标签。如果您有多个文本片段,例如文件名列表,则您可以将它们存储在元胞数组中。如果一个元胞数组的元素均为字符向量,则它是字符向量元胞数组。

创建字符向量元胞数组

要创建字符向量元胞数组,请使用花括号 {},就像创建任何元胞数组一样。例如,使用字符向量元胞数组来存储名称列表。

C = {'Li','Sanchez','Jones','Yang','Larson'}

C = 1x5 cell
{‘Li’} {‘Sanchez’} {‘Jones’} {‘Yang’} {‘Larson’}

C 中的字符向量可以有不同长度,因为元胞数组不要求其内容具有相同的大小。要确定 C 中字符向量的长度,请使用 strlength 函数。

L = strlength(C)

L = 1×5

 2     7     5     4     6

访问元胞数组中的字符向量

要访问元胞数组中的字符向量,请使用花括号 {} 对其进行索引。提取第一个元胞的内容,并将其存储为字符向量。

C = {'Li','Sanchez','Jones','Yang','Larson'};
chr = C{1}

chr =
‘Li’
使用另一个字符向量为第一个元胞赋值。

C{1} = 'Yang'

C = 1x5 cell
{‘Yang’} {‘Sanchez’} {‘Jones’} {‘Yang’} {‘Larson’}

要引用元胞的子集而不是其内容,请使用圆括号进行索引。

C(1:3)

ans = 1x3 cell
{‘Yang’} {‘Sanchez’} {‘Jones’}

虽然您可以通过索引来访问元胞的内容,但是,大多数接受元胞数组作为输入的函数对整个元胞数组进行操作。例如,您可以使用 strcmp 函数将 C 的内容与字符向量进行比较。如果匹配,strcmp 返回 1,否则返回 0。

TF = strcmp(C,'Yang')

TF = 1x5 logical array

1 0 0 1 0

您可以对 TF 求和,以求出匹配数。

num = sum(TF)
num = 2
使用 TF 作为逻辑索引以返回 C 中的匹配项。如果使用圆括号进行索引,则输出是只包含匹配项的元胞数组。

M = C(TF)

M = 1x2 cell
{‘Yang’} {‘Yang’}

将元胞数组转换为字符串数组

MATLAB® 和 MathWorks® 全线产品都支持字符串数组。因此,建议您使用字符串数组而不是字符向量元胞数组。(不过,接受字符串数组作为输入的 MATLAB 函数也接受字符向量和字符向量元胞数组。)

您可以将字符向量元胞数组转换为字符串数组。要转换字符向量元胞数组,请使用 string 函数。

C = {'Li','Sanchez','Jones','Yang','Larson'}

C = 1x5 cell
{‘Li’} {‘Sanchez’} {‘Jones’} {‘Yang’} {‘Larson’}

str = string(C)

str = 1x5 string
“Li” “Sanchez” “Jones” “Yang” “Larson”

事实上,string 函数可以转换任何元胞数组,只要数组中的内容都能被转换为字符串即可。

C2 = {5, 10, 'some text', datetime('today')}

C2=1×4 cell array
{[5]} {[10]} {‘some text’} {[12-Aug-2022]}

str2 = string(C2)

str2 = 1x4 string
“5” “10” “some text” “12-Aug-2022”

该博文为原创文章,未经博主同意不得转。
本文章博客地址:https://cplusplus.blog.csdn.net/article/details/127811171

相关内容

热门资讯

喜欢穿一身黑的男生性格(喜欢穿... 今天百科达人给各位分享喜欢穿一身黑的男生性格的知识,其中也会对喜欢穿一身黑衣服的男人人好相处吗进行解...
发春是什么意思(思春和发春是什... 本篇文章极速百科给大家谈谈发春是什么意思,以及思春和发春是什么意思对应的知识点,希望对各位有所帮助,...
网络用语zl是什么意思(zl是... 今天给各位分享网络用语zl是什么意思的知识,其中也会对zl是啥意思是什么网络用语进行解释,如果能碰巧...
为什么酷狗音乐自己唱的歌不能下... 本篇文章极速百科小编给大家谈谈为什么酷狗音乐自己唱的歌不能下载到本地?,以及为什么酷狗下载的歌曲不是...
家里可以做假山养金鱼吗(假山能... 今天百科达人给各位分享家里可以做假山养金鱼吗的知识,其中也会对假山能放鱼缸里吗进行解释,如果能碰巧解...
华为下载未安装的文件去哪找(华... 今天百科达人给各位分享华为下载未安装的文件去哪找的知识,其中也会对华为下载未安装的文件去哪找到进行解...
四分五裂是什么生肖什么动物(四... 本篇文章极速百科小编给大家谈谈四分五裂是什么生肖什么动物,以及四分五裂打一生肖是什么对应的知识点,希...
怎么往应用助手里添加应用(应用... 今天百科达人给各位分享怎么往应用助手里添加应用的知识,其中也会对应用助手怎么添加微信进行解释,如果能...
客厅放八骏马摆件可以吗(家里摆... 今天给各位分享客厅放八骏马摆件可以吗的知识,其中也会对家里摆八骏马摆件好吗进行解释,如果能碰巧解决你...
苏州离哪个飞机场近(苏州离哪个... 本篇文章极速百科小编给大家谈谈苏州离哪个飞机场近,以及苏州离哪个飞机场近点对应的知识点,希望对各位有...