how to concatenate string and number

852 ビュー (過去 30 日間)
gvreddy
gvreddy 2015 年 7 月 30 日
回答済み: MathWorks Support Team 2024 年 6 月 11 日
Hello ,
I want to concatenate string and number in for loop
requestID = Req_Check;
for k = 1 : 10
requestID = requestID +1;
end
I am expecting requestID after for loop like Req_Check_1, Req_Check_2 ...Req_Check_10
How can I do this?
  1 件のコメント
Amir Moslemi
Amir Moslemi 2021 年 5 月 2 日
use "strcat" such that in each iteration convert number to string by "num2str" and eventually strcat(s1,s2). s1 your str and s2 your number(converted to string)

サインインしてコメントする。

採用された回答

Star Strider
Star Strider 2015 年 7 月 30 日
Two (of perhaps many) possibilities:
requestIDs = 'Req_Check';
for k = 1 : 10
requestID(k,:) = [requestIDs '_' num2str(k,'%02d')]; % Character Array
end
requestIDs = 'Req_Check';
for k = 1 : 10
requestID{k} = [requestIDs '_' num2str(k,'%d')]; % Cell Array
end
The first creates a character array and produces a two-digit number filed so all are of equal length. The second uses a cell array, so the lengths don’t have to be equal.
  4 件のコメント
gvreddy
gvreddy 2015 年 7 月 31 日
Thanks again for explanation, then I prefer sprintf here. and I want to find the number from string 'Req_Check_10'. I am using regexp like below:
[D,S]=regexp('Req_Check_10','([0-9])','match')
but its giving me indiviual numbers like 1,0.
Could you please help me on this?
Stephen23
Stephen23 2015 年 7 月 31 日
[D,S] = regexp('Req_Check_10','\d+','match','split')

サインインしてコメントする。

その他の回答 (2 件)

cesar silva
cesar silva 2019 年 11 月 18 日
People like to make all complicated...
Concatenate 2 words
a='hi';
b='you'
c=[a b]
Concatenate word + number
a = num2str(2)
b = 'you'
c = [b a] or... if you want... c = [b '_' a]
will give you: you2 or you_2
SIMPLICITY IS SO SEXY...
  3 件のコメント
Daniel Posadas
Daniel Posadas 2020 年 8 月 13 日
I'm agree with you, this one helped me out easy and fast... as a sofware engineer I hate when my programmers want to make simple things as if they were very elaborated, wasting resources. Thanks
Bogdan -Ervin
Bogdan -Ervin 2023 年 6 月 2 日
It doesn't give me a single string. It gives me 2 strings for c=[b a] and 3 strings for c=[b '_' a].

サインインしてコメントする。


MathWorks Support Team
MathWorks Support Team 2024 年 6 月 11 日
requestID = "Req_Check"
requestIDs = requestID + "_" + (1:10)'
Please see the documentation for strings for more information.

製品

Community Treasure Hunt

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

Start Hunting!

Translated by