Есть ли функция в Matlab, аналогичная java-функции String.split(разделитель)?

Есть ли (по умолчанию) функция Matlab, которая ведет себя аналогично расколу java-метода (разделитель), где вы можете токенизировать строку на основе условного разделителя?

Ответ 1

Существует встроенная функция textscan, способная к этому:

>> C = textscan('I like stack overflow', '%s', 'delimiter', 'o');    
>> C = C{1}

C = 
    'I like stack '
    'verfl'
    'w'

Ответ 2

Вот несколько способов разделить строку. Один, как только что упомянул Роди Олденхаус, и вот некоторые другие:

1 > Используя функцию regexp:

>> str = 'Good good study Day day up';
>> regexp(str,'\s','split')
ans = 
    'Good'    'good'    'study'    'Day'    'day'    'up'
>> 

2 > Используя функцию strread:

>> str = 'Section 4, Page 7, Line 26';
>> strread(str, '%s', 'delimiter', ',')
ans = 
    'Section 4'
    'Page 7'
    'Line 26'
>> 

Ответ 3

Существует функция, аналогичная тому, что вы упомянули в обмен файлами в пакете под названием xml_toolbox.

Он называется strsplit.

strsplit ( "Мне нравится переполнение стека", "o" )

ans =

'Мне нравится стек' 'verfl' 'w'