part of file name
1 view (last 30 days)
Show older comments
ayman mounir
on 18 Jul 2019
Commented: ayman mounir
on 19 Jul 2019
If I have a file name such as ' Hello_World_2020 ', I want to take the part between the underscores ' world ', how I would do that.
Regards.
0 Comments
Accepted Answer
Walter Roberson
on 18 Jul 2019
Edited: Walter Roberson
on 18 Jul 2019
s = 'Hello_World_2020';
c = regexp(s, '_', 'split') ;
c{2}
You can also use strsplit() instead of regexp. On the other hand, strsplit() invokes regexp internally.
3 Comments
Adam Danz
on 19 Jul 2019
"If I write s=Hello_World_year_2020. the answer would be 'Hallo_year'. what I should modify?"
- "Hello_World_2020" --> "World": This removes everything before and after the underscores, including the underscores.
- "Hello_World_year_2020" --> "Hello_year": This doesnt' follow that rule.
I think Walter's solution will come in handy but you'll need to explain the rule you're following.
More Answers (3)
Adam Danz
on 18 Jul 2019
s = 'Hello_World_2020';
c = regexp(s,'_(.*)_','tokens');
c = c{1}{1};
c =
'World'
madhan ravi
on 18 Jul 2019
s=' Hello_World_2020 ';
[~,Wanted]=regexp(s,'_(.*)_','match','tokens');
Wanted{:}
2 Comments
See Also
Categories
Find more on Startup and Shutdown in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!