Parse cell array into separate cells, with no delimiter
Mostrar comentarios más antiguos
Hello! I am trying to parse the name of a file into separate variables to describe the file, but there are no delimiters in the file name. For example, if my file name is
fileName = {'11171401'}
I want to divide this into:
track = {'1117'}
cycle = {'14'}
segment = {'01'}
I've already chopped off the beginning of the file name using the split function, but I can't seem to figure out how to divide up the rest without a delimiter. Thank you in advance for any help!
6 comentarios
James Tursa
el 7 de Jul. de 2022
What are the rules for the name splitting? If it is always 4-2-2 character splits then you could just use indexing.
Gabrielle Trudeau
el 7 de Jul. de 2022
Editada: Gabrielle Trudeau
el 7 de Jul. de 2022
Gabrielle Trudeau
el 7 de Jul. de 2022
per isakson
el 7 de Jul. de 2022
In your solution, track, cycle and segment are all double, not cells containing character vectors as required. Try
fileName = {'11171401'};
track = {fileName{1}(1:4)}
cycle = {fileName{1}(5:6)}
segment = {fileName{1}(7:8)}
Gabrielle Trudeau
el 8 de Jul. de 2022
fnm = {'11171401'; '22282512'; '33393623'};
tkn = regexp(fnm,'^(\d{4})(\d\d)(\d\d)$','tokens','once');
tkn = vertcat(tkn{:})
Respuesta aceptada
Más respuestas (0)
Categorías
Más información sobre String Parsing en Centro de ayuda y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!