MatLab中的字符串向量/数组

时间:2013-06-06 15:14:04

标签: string matlab

我想在字符串中创建一个容器(数组,向量,......我不完全知道Matlab中这些之间的区别)。我想将它用于显示目的和主要打印到文件。在C ++中我会有类似的东西:

std::vector<std::string> str;
str.push_back( "Test1" );
str.push_back( "Test2" );
str.push_back( "Test3" );

for( unsigned int i = 0; i < str.size(); i++ )
{
    printf( "%s\n", str[i].c_str() );
}

我的问题是:如何在Matlab中实现类似的东西,或者甚至是可能的。我已经尝试了一些我在这里和那里找到的东西,但没有任何作用。以下是我尝试过的事情:

str = ['Test1' 'Test2' 'Test3'];

str = ['Test1', 'Test2', 'Test3'];

str = ['Test1'; 'Test2'; 'Test3'];

2 个答案:

答案 0 :(得分:5)

使用{}(单元格数组),否则只会连接字符串。

str = {'test1', 'test2', 'LongerTestString'};

for ii = 1:length(str);
    disp(str{ii});
end

答案 1 :(得分:0)

Nick答案的补充(因为cellfun很有趣:)):

str = {'test1', 'test2', 'LongerTestString'};
cellfun(@disp, str)