MATLAB Answers

0

Splitting based on delimiter but only once

Asked by Sanjana Sankar on 22 Jul 2019
Latest activity Edited by KALYAN ACHARJYA on 22 Jul 2019
Hello!
I know how to split a string entirely based on a delimiter. But I would like to know how to do the following split
Input: Country ˈk ʌ n t r i
Output: Country
and ˈk ʌ n t r i
That is, I would like to use the first 'space' as a delimiter. But not the other spaces between the letters.
Please let me know how to make this possible.
Thanks in advance!

  2 Comments

Sorry, for me the question is still unclear? The input and oytput seems same (added and and 2nd line)
Input is a single string "Country ˈk ʌ n t r i"
Output must be 2 strings. "Country" and "ˈk ʌ n t r i" separately.

Sign in to comment.

3 Answers

Answer by infinity
on 22 Jul 2019

Hello,
You can refer this idea to extend you the case of longer string
clear
input = 'Country ˈk ʌ n t r i';
[val,idx] = ismember(' ˈ',input);
n =length(idx);
output = cell(1,n);
for i = 1:n
if i == 1
output{i} = input(1:idx(i)-1);
else
output{i} = input(idx(i)+1:end);
end
end

  0 Comments

Sign in to comment.


Answer by KALYAN ACHARJYA on 22 Jul 2019
Edited by KALYAN ACHARJYA on 22 Jul 2019

input='Country k ʌ n t r i';
str1=strtok(input)
str2=extractAfter(input,str1)
output={str1,str2}
Results:
str1 =
'Country'
str2 =
' k ? n t r i'
output =
1×2 cell array
'Country' ' k ? n t r i'

  0 Comments

Sign in to comment.


Answer by Stephen Cobeldick on 22 Jul 2019

>> S = 'Country ˈk ʌ n t r i';
>> C = regexp(S,' ','split','once')
C =
'Country' 'ˈk ʌ n t r i'

  0 Comments

Sign in to comment.