Splitting numbers of vector in multiple parts
3 次查看(过去 30 天)
显示 更早的评论
I have a vector which can vary in length, e. g. V' = [2022024 2023074 2022044 2023014 2023054]. Now my problem is that I need to split each number into specific parts:
2022024 -> 2022 024
2023074 -> 2023 074
...
Does anyone know how to do this in a loop?
Thanks in advance
0 个评论
采纳的回答
Bruno Luong
2023-7-25
编辑:Bruno Luong
2023-7-25
If string output is desired
V = [2022024 2023074 2022044 2023014 2023054]
c = mat2cell(char(arrayfun(@num2str,V,'unif',0)),ones(length(V),1),[4 3])
string(c)
0 个评论
更多回答(4 个)
Bruno Luong
2023-7-25
编辑:Bruno Luong
2023-7-25
If numerical value output is desired
V = [2022024 2023074 2022044 2023014 2023054]
[floor(V/1000); mod(V,1000)]'
0 个评论
Sachin Hegde
2023-7-25
V= [2022024 2023074 2022044 2023014 2023054];
V = num2str(V);
tkn = regexp(V,'(\d+)(\d{3})','tokens');
V_split = str2double(vertcat(tkn{:}))
0 个评论
Bruno Luong
2023-7-25
编辑:Bruno Luong
2023-7-25
V = [2022024 2023074 2022044 2023014 2023054]
s = string(V)';
s = [extractBefore(s,5) extractAfter(s,4)]
0 个评论
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Matrix Indexing 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!