Renaming str variables based on conditions

조회 수: 5 (최근 30일)
Jonathan
Jonathan 2012년 3월 30일
Hello,
I have a list of Str variables (listed in 1158 columns)
{A} ans =
Columns 1 through 10
'eyeo' 'eyec' 'ESTR' 'TSTR' 'Co20' 'RT ' 'TEND' 'TSTR' 'Co01' 'RT ' ....
Is there a quick way to 1) Change 'TSTR' to a new str variable that depends on the very next variable eg. Column 4 becomes 'TSTRCo20'. Column 5 remains the same. Column 8 becomes 'TSTRCo01'. 2) Similarly change 'RT' to reflect the variable that preceded it. eg. column 6 becomes 'RTCo20' and column 9 becomes 'RTCo01'.
Thank you!
  댓글 수: 1
Jan
Jan 2012년 3월 31일
Are you talking about strings or variables?
It would be easier to create an answer, if you post a complete example, which can be copied&pasted with input and wanted output. "{A} ans = Columns 1 through 10 'eyeo' ..." is not useful.

댓글을 달려면 로그인하십시오.

채택된 답변

Jan
Jan 2012년 3월 31일
A = {'eyeo', 'eyec', 'ESTR', 'TSTR', 'Co20', 'RT ', ...
'TEND', 'TSTR', 'Co01', 'RT '};
index = find(strcmp(A, 'TSTR'));
A(index) = strcat(A(index), A(index + 1));
index = find(strcmp(A, 'RT '));
A(index) = strcat(deblank(A(index)), A(index - 1));
>> A = {'eyeo', 'eyec', 'ESTR', 'TSTRCo20', 'Co20', 'RTCo20', 'TEND', 'TSTRCo01', 'Co01', 'RTCo01'}

추가 답변 (3개)

Sean de Wolski
Sean de Wolski 2012년 3월 30일

Jonathan
Jonathan 2012년 3월 30일
Sorry, But I think your answer is missing..

Jonathan
Jonathan 2012년 3월 30일
Anyone?

카테고리

Help CenterFile Exchange에서 Characters and Strings에 대해 자세히 알아보기

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by