Extracting text from a cell
17 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
A='00003H102'
How can I write a code to extract the first 6 letters and numbers. i.e. I want B='00003H';
1 Kommentar
Jan
am 24 Jul. 2013
Bearbeitet: Jan
am 24 Jul. 2013
@joseph: From the comments later on we see, that your data are not A='00003H102', but that you talk of a cell string. Please care for posting the real input data, because posting wrong answers for wrong inputs wastes your and our time. Thanks.
What is the wanted result, when the string has less than 6 characters?
Antworten (3)
Azzi Abdelmalek
am 24 Jul. 2013
Bearbeitet: Azzi Abdelmalek
am 24 Jul. 2013
A='00003H102'
A(1:6)
If you have a cell array
A={'00003H102','00003H103','00003H104'}
B=cellfun(@(x) x(1:6),A,'un',0)
5 Kommentare
Azzi Abdelmalek
am 24 Jul. 2013
A={'00003H102','00003H103','00003H104','00003'}
idx=cellfun(@(x) min(numel(x),6),A,'un',0)
B=cellfun(@(x,y) x(1:y),A,idx,'un',0)
Azzi Abdelmalek
am 24 Jul. 2013
A={'00003H102','00003H103','00003H104','00003' []}
B=cellfun(@(x) x(1:min(numel(x),6)),A,'un',0)
0 Kommentare
Andrei Bobrov
am 24 Jul. 2013
Bearbeitet: Andrei Bobrov
am 24 Jul. 2013
B = regexp(A,'^.{0,6}','match')
B = cat(1,B{:});
0 Kommentare
Siehe auch
Kategorien
Mehr zu Argument Definitions finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!