2015-03-29 4 views
0

У меня есть следующий вектор символов:характер вектор индексации Matlab

test = [sprintf('(1,2)\n(1,3)\n(1,4)')] 

test = 
(1,2) 
(1,3) 
(1,4) 

Как мне сделать индексацию так, что, когда я печатаю test(1) он возвращает (1,2). и test(2) = (1,3) И test(2) = (1,4). Можно ли разбить вектор символа на новый символ линии?

ответ

2

Вы должны использовать strsplit, который возвращает массив ячеек

c=strsplit(test,'\n') 

Поскольку это является индексация ячейки делается с {}, например c{1}

+0

На старых версиях Matlab (которые не имеют 'strsplit '):' c = regexp (test, '\ n', 'split') ' –

+0

спасибо @Daniel. Я думал, что мне придется сделать цикл for, чтобы получить тест (1: 5), тест (6:11), test (12:17) в новый массив. это намного проще! – cooldood3490

Смежные вопросы