strtok is only using the first character of my delimiter instead of the full character vector
Show older comments
I am trying to use strtok to split a character vector using a character vector as my delimiter. However, MATLAB is only using the first character in the vector.
For example,
tok=strtok('Hello World','HAIR')
Returns
tok='ello World'
Instead of 'Hello World'
2 Comments
Guillaume
on 26 Mar 2020
I'm curious why you think that it should return 'Hello World' when H is one of the delimeter you specified.
Your strtok(xxx,'HAIR') explicitly tells matlab that H, A, I, or R is a delimiter.
Samuel Morstein
on 26 Mar 2020
Accepted Answer
More Answers (1)
Peng Li
on 26 Mar 2020
why don't you use strsplit instead?
>> a = strsplit('Hello World', 'HAIR')
a =
1×1 cell array
{'Hello World'}
>> a = strsplit('HHAIRello World', 'HAIR')
a =
1×2 cell array
{'H'} {'ello World'}
Categories
Find more on String Parsing 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!