String matlab中矩阵的字符串解析

String matlab中矩阵的字符串解析,string,matlab,parsing,matrix,integer,String,Matlab,Parsing,Matrix,Integer,我有一个整数矩阵,我想把它解析成一个字符串。我尝试了mat2str、num2str等,但它总是在矩阵单元格之间添加空格 假设我有矩阵: 2 4 5 1 4 9 2 0 1 9 5 3 因此,我想要的是: ans = '245149201953' 我肯定不会那么难,也许我错过了一些很明显的东西,但我只是有点被困在这里。我会使用“sprintf”。我认为它将以列方式解析参数,但这可以相当容易地解决,例如使用循环或转置。MATLAB实际上是按列执行大部分操作的,所以如果您有选择的话,我建议您将其考

我有一个整数矩阵,我想把它解析成一个字符串。我尝试了mat2str、num2str等,但它总是在矩阵单元格之间添加空格

假设我有矩阵:

2 4 5 1
4 9 2 0
1 9 5 3
因此,我想要的是:

ans = '245149201953'

我肯定不会那么难,也许我错过了一些很明显的东西,但我只是有点被困在这里。

我会使用“sprintf”。我认为它将以列方式解析参数,但这可以相当容易地解决,例如使用循环或转置。MATLAB实际上是按列执行大部分操作的,所以如果您有选择的话,我建议您将其考虑在内

ex)


你可以尝试用数学方法来做:

ans=sum(((ones(1,numel(A))*10).^(numel(A):0)).*reshape(A',[],1)')

将矩阵表示为
M
。一些可能的办法是:

  • 与格式说明符一起使用以避免空格:

    result = num2str(reshape(M.',1,[]), '%i');
    
    如果需要,将格式说明符
    '%i'
    更改为其他格式

  • 使用并删除不需要的字符:

  • 如果矩阵仅包含单个数字:将每个数字转换为ASCII码,然后转换为字符:

    result = char(reshape(M.',1,[])+'0');
    

  • 谢谢大家!我最终使用了sprintf方法,因为它似乎是最简单的方法,但也要感谢其他人:)
    result = regexprep(mat2str(M),'(\[|\]|\;|\s)','')
    
    result = char(reshape(M.',1,[])+'0');