'ab[c]' to this 'ab_c' ?

조회 수: 1 (최근 30일)
Ioannis Vourvachakis
Ioannis Vourvachakis 2021년 11월 6일
댓글: Ioannis Vourvachakis 2021년 11월 6일
How can I convert this 'ab[c]' to this 'ab_c' ?
The letters a,b,c are for the specific example.
In the position of c could be any letter.
  댓글 수: 2
Steven Lord
Steven Lord 2021년 11월 6일
편집: Steven Lord 2021년 11월 6일
Are you trying to change a char vector containing this literal text, or are you trying to change indexing into a variable to instead have numbered names for variables?
If the latter, can you define variables with numbered names like ab_1, ab_2, ab_3, ... ? Yes. Should you do this? Generally we recommend against it. See that page for alternatives you should use instead.
Ioannis Vourvachakis
Ioannis Vourvachakis 2021년 11월 6일
편집: Ioannis Vourvachakis 2021년 11월 6일
I want to convert this cell array
'10fthf[c]'
'10fthf[h]'
'10fthf[m]'
'10fthf[x]' .
to this cell array
'10fthf_c'
'10fthf_h'
'10fthf_m'
'10fthf_x'
Ιn other words, I want to create a for loop, where for every element of the first cell array, it will remove the brackets ([]}and put a underscore (_) before the letter that it was previously contained in the brackets.

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

채택된 답변

Image Analyst
Image Analyst 2021년 11월 6일
Try this:
s = 'ab[c]'
s = 'ab[c]'
s = strrep(s, '[', '_') % Replace [ with underline.
s = 'ab_c]'
s = strrep(s, ']', '') % Replace ] with null.
s = 'ab_c'
  댓글 수: 3
Image Analyst
Image Analyst 2021년 11월 6일
For a cell array, it's the same code:
s = {'ab[c]'; 'xy[z]'}
s = strrep(s, '[', '_') % Replace [ with underline.
s = strrep(s, ']', '') % Replace ] with null.
If this answers your question, maybe you can click the "Accept this answer" link, unless you want to wait for a better one.
Ioannis Vourvachakis
Ioannis Vourvachakis 2021년 11월 6일
Yes, I accepted it. Thank you again.

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

추가 답변 (1개)

Paul
Paul 2021년 11월 6일
C = { '10fthf[c]'
'10fthf[h]'
'10fthf[m]'
'10fthf[x]'}
C = 4×1 cell array
{'10fthf[c]'} {'10fthf[h]'} {'10fthf[m]'} {'10fthf[x]'}
cellstr(extractBefore(string(C),"[") + "_" + extractBefore(extractAfter(string(C),"["),2))
ans = 4×1 cell array
{'10fthf_c'} {'10fthf_h'} {'10fthf_m'} {'10fthf_x'}

카테고리

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