editing in string array

6 ビュー (過去 30 日間)
ANKUR KUMAR
ANKUR KUMAR 2017 年 11 月 1 日
編集済み: KSSV 2017 年 11 月 1 日
a={'10','7','5','9','11','12','12','4'}
I want to put 0 at the starting of all those whose length is 1. How can I do this easily?

採用された回答

KSSV
KSSV 2017 年 11 月 1 日
編集済み: KSSV 2017 年 11 月 1 日
a={'10','7','5','9','11','12','12','4'} ;
L = cellfun(@length,a) ;
idx = L==1 ;
a(idx) = strcat('0',a(idx)) ;
  3 件のコメント
KSSV
KSSV 2017 年 11 月 1 日
cellfun works on the cells.....it is nothing but a for loop on each cell. arrayfun works on rows/ cols of matrices.
Stephen23
Stephen23 2017 年 11 月 1 日
編集済み: Stephen23 2017 年 11 月 1 日
More accurately:
  • cellfun applies the function to the contents of each cell of a cell array.
  • arrayfun applies the function to each element of any array (which could be numeric, cell, etc).
Use whichever suits your purpose.

サインインしてコメントする。

その他の回答 (0 件)

カテゴリ

Help Center および File ExchangeLoops and Conditional Statements についてさらに検索

タグ

製品

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by