delete the first and last character inside a char
    13 ビュー (過去 30 日間)
  
       古いコメントを表示
    
Hi. How can I do to delete the 0 and A present in each row of the cell?
values = {'08126A';'05354A';'01406A';'09630A'};
I am using this code but would like to delete only the first 0.
charact = {'08126A';'05354A';'01406A';'09630A'};
pat = num2cell('0A');
charact = erase(charact,pat);
0 件のコメント
採用された回答
  Dyuman Joshi
      
      
 2023 年 6 月 26 日
        charact = {'08126A';'05354A';'01406A';'09630A'};
y=regexprep(charact,'0(\d*)A','$1')
2 件のコメント
  Rik
      
      
 2023 年 6 月 26 日
				You can easily extend this code to work for other leading and trailing characters (and other characters in the middle):
charact = {'08126A';'05354A';'01406A';'09630A'};
y=regexprep(charact,'.(.*).','$1')
その他の回答 (1 件)
  Sharad
      
 2023 年 6 月 26 日
        As per my understanding, you are interested in eliminating the 0s and As from each row of the cells.In order to delete the 0 and A present in each row of cell, you might want to follow these steps:
- Declare the values cell array (as done).
 
values = {'08126A';'05354A';'01406A';'09630A'};
- Use the strrep function to replace 0 and A with empty character ''.
 
% Remove '0' from each cell
values = strrep(values, '0', '');
% Remove 'A' from each cell
values = strrep(values, 'A', '');
- Display the resultant values cell using 'disp'.
 
disp(values);
Find the MATLAB strrep documentation here: https://in.mathworks.com/help/matlab/ref/strrep.html
Thank you.
1 件のコメント
  DGM
      
      
 2023 年 6 月 26 日
				That will strip all zeros from the vectors, not just leading zeros.
values = {'08126A';'05354A';'01406A';'09630A'};
% Remove '0' from each cell
values = strrep(values, '0', '');
% Remove 'A' from each cell
values = strrep(values, 'A', '')
参考
カテゴリ
				Help Center および File Exchange で Cell Arrays についてさらに検索
			
	Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!