Create multiple sub arrays in one line!
12 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
Francisco Dias
el 27 de Nov. de 2019
Comentada: Star Strider
el 27 de Nov. de 2019
Hi everyone, I have the string bellow as input to a function
'(44) (hello) (good) ()'
the function looks for indices positions of left and right parenthesis...
open = strfind(text, '(');
close = strfind(text, ')');
after that I want to isolate everything inside the parenthesis...
I was hoping there was a fast way of doing this something like:
output = text(open:close);
but it doesn't seem to work does anyone has a clue if this is possible?!
0 comentarios
Respuesta aceptada
Star Strider
el 27 de Nov. de 2019
Try this:
str = '(44) (hello) (good) ()';
out = regexp(str, '(?<=\()\w*(?=\))', 'match')
producing:
out =
1×3 cell array
{'44'} {'hello'} {'good'}
Make appripriate changes to get the result you wannt.
4 comentarios
Más respuestas (1)
Turlough Hughes
el 27 de Nov. de 2019
Editada: Turlough Hughes
el 27 de Nov. de 2019
This is one way to go about it:
a=strsplit(text(text~=' '),{'(',')'})
output=sprintf('%s',a{:})
1 comentario
Turlough Hughes
el 27 de Nov. de 2019
Editada: Turlough Hughes
el 27 de Nov. de 2019
Actually, just realising you could also write:
output=text(text~=' ' | text~='(' | text~=')')
Ver también
Categorías
Más información sobre Entering Commands en Help Center y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!