Dividing a string into sub-strings using a for-loop
1 visualizzazione (ultimi 30 giorni)
Mostra commenti meno recenti
Laura Nielsen
il 13 Gen 2021
Commentato: Cris LaPierre
il 13 Gen 2021
Hi,
I have a string as shown below:
FilesID='data_190830_102602.mem,data_191030_141002.mem,data_191230_101612.mem'
I want to extract the characters between the commas - each of them is unique, as they are based on timestamps.
I have tried to built a for-loop as seen below, however, it seems not to terminate and a fault occurs;
"Index exceeds the number of array elements"
with respect to this line:
word{j} = FilesID(qnew:qnew+21)
Here is the entire code:
j = 1;
for a=1:length(FilesID)
for q = (j-1):22:length(FilesID)
qnew=q+a;
word{j} = FilesID(qnew:qnew+21)
a=a+1;
j = j+1;
end
end
Thanks
0 Commenti
Risposta accettata
Cris LaPierre
il 13 Gen 2021
Why a for loop? I would use strsplit
FilesID='data_190830_102602.mem,data_191030_141002.mem,data_191230_101612.mem';
prts = strsplit(FilesID,',')
3 Commenti
Cris LaPierre
il 13 Gen 2021
If it helps, what you are looking for might be called parsing a string, or string tokenization. See if this example is more along the lines of what you needed.
Più risposte (0)
Vedere anche
Categorie
Scopri di più su Characters and Strings in Help Center e File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!