- Extract the string from the cell array: First, access the string stored in the cell array 'T'.
- Split the string: Use the 'split' function to split the string into parts based on the semicolon delimiter. Since the input is a character vector, the output of 'split' will be a cell array of character vectors.
- Convert to a string array: Finally, convert the cell array of character vectors to a string array.
How to convert a 1x1 table coining a list of N names into a Nx1 string of names
    조회 수: 6 (최근 30일)
  
       이전 댓글 표시
    
I have a 1x1 table T element which contains several names as the following 
T =  { 'Aaaa; Bbbb; Cccc; Dddd' }
I would like to convert it into a 4x1 string array of 4 names as 
TT = ["Aaaa" ; "Bbbb" ; "Cccc" ; "Dddd"]
so that TT(1)="Aaaa",  etc.
how can I do it?
댓글 수: 0
답변 (1개)
  Lokesh
      
 2024년 5월 28일
        
      편집: Lokesh
      
 2024년 5월 28일
  
      Hi Nicola, 
It appears that T is a cell array containing a single string. To achieve the conversion to a 4x1 string array 'TT' as described, you can follow these steps in MATLAB:
Here's how you can do it:
% Given cell array T 
T = {'Aaaa; Bbbb; Cccc; Dddd'}; 
% Extract the string from the cell array 
str = T{1}; 
% Split the string into parts based on the semicolon 
parts = split(str, '; '); 
% Convert the cell array of character vectors to a string array 
TT = string(parts); 
% If you need TT to be a 4x1 column vector explicitly 
TT = reshape(TT, [], 1);
Refer to the following documentation to know more about 'split':
댓글 수: 1
  Dyuman Joshi
      
      
 2024년 5월 28일
				Your code has a bit of redundancy. Here's a cleaned up version -
T = {'Aaaa; Bbbb; Cccc; Dddd'}; 
out = string(split(T, '; '))
Check the output after each operation you perform and you will catch the redundancies.
참고 항목
카테고리
				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!


