how to concatenate string and number

843 views (last 30 days)
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 Comment
Amir Moslemi
Amir Moslemi on 2 May 2021
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)

Sign in to comment.

Accepted Answer

Star Strider
Star Strider on 30 Jul 2015
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 Comments
gvreddy
gvreddy on 31 Jul 2015
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 on 31 Jul 2015
[D,S] = regexp('Req_Check_10','\d+','match','split')

Sign in to comment.

More Answers (2)

cesar silva
cesar silva on 18 Nov 2019
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 Comments
Daniel Posadas
Daniel Posadas on 13 Aug 2020
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 on 2 Jun 2023
It doesn't give me a single string. It gives me 2 strings for c=[b a] and 3 strings for c=[b '_' a].

Sign in to comment.


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

Products

Community Treasure Hunt

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

Start Hunting!