Join strings together with '_' between them

5 vues (au cours des 30 derniers jours)
Smithy le 20 Sep 2022
Commenté : Smithy le 21 Sep 2022
Hello everybody,
I have a two vectors and I would like to join together with a and b below with some repetition.
The output I want is c1 as below. I made the characters before _ using repmat function.
and made the characters after _ using repelem function.
However, I failed to join them togerther with '_' between them.
Please give me some helps to join them togerther ?
clc; close all; clear;
a = {'A11';'A12';'A21';'A22';'A23';'A24'};
b = {'A300';'A5300';'A291';'A5291'};
c1 = [repmat(a,length(b),1) , '_' , repelem(b,length(a),1)];
% c1 = ['A11_A300';'A12_A300';'A21_A300';'A22_A300';'A23_A300';'A24_A300';...
% 'A11_A5300';'A12_A5300';'A21_A5300';'A22_A5300';'A23_A5300';'A24_A5300';...
% 'A11_A291';'A12_A291';'A21_A291';'A22_A291';'A23_A291';'A24_A291';...
% 'A11_A5291';'A12_A5291';'A21_A5291';'A22_A5291';'A23_A5291';'A24_A5291']

Réponse acceptée

KSSV le 20 Sep 2022
a = {'A11';'A12';'A21';'A22';'A23';'A24'};
b = {'A300';'A5300';'A291';'A5291'};
a1 = repmat(a,length(b),1) ;
b1 = repelem(b,length(a),1);
m = repelem('_',length(a1),1) ;
ab = strcat(a1,m,b1)
ab = 24×1 cell array
{'A11_A300' } {'A12_A300' } {'A21_A300' } {'A22_A300' } {'A23_A300' } {'A24_A300' } {'A11_A5300'} {'A12_A5300'} {'A21_A5300'} {'A22_A5300'} {'A23_A5300'} {'A24_A5300'} {'A11_A291' } {'A12_A291' } {'A21_A291' } {'A22_A291' } {'A23_A291' } {'A24_A291' } {'A11_A5291'} {'A12_A5291'} {'A21_A5291'} {'A22_A5291'} {'A23_A5291'} {'A24_A5291'}
  1 commentaire
Smithy le 21 Sep 2022
Wow... thank you very mcuh. I really really appreciate with it. It works perfect.

Connectez-vous pour commenter.

Plus de réponses (1)

Steven Lord
Steven Lord le 20 Sep 2022
Use the string append operator +.
a = {'A11';'A12';'A21';'A22';'A23';'A24'};
b = {'A300';'A5300';'A291';'A5291'};
C1 = a + "_" + b.'
C1 = 6×4 string array
"A11_A300" "A11_A5300" "A11_A291" "A11_A5291" "A12_A300" "A12_A5300" "A12_A291" "A12_A5291" "A21_A300" "A21_A5300" "A21_A291" "A21_A5291" "A22_A300" "A22_A5300" "A22_A291" "A22_A5291" "A23_A300" "A23_A5300" "A23_A291" "A23_A5291" "A24_A300" "A24_A5300" "A24_A291" "A24_A5291"
C2 = a.' + "_" + b
C2 = 4×6 string array
"A11_A300" "A12_A300" "A21_A300" "A22_A300" "A23_A300" "A24_A300" "A11_A5300" "A12_A5300" "A21_A5300" "A22_A5300" "A23_A5300" "A24_A5300" "A11_A291" "A12_A291" "A21_A291" "A22_A291" "A23_A291" "A24_A291" "A11_A5291" "A12_A5291" "A21_A5291" "A22_A5291" "A23_A5291" "A24_A5291"
  1 commentaire
Smithy le 21 Sep 2022
Thank you very mcuh. It works really well.

Connectez-vous pour commenter.


En savoir plus sur Matrix Indexing dans Help Center et File Exchange




Community Treasure Hunt

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

Start Hunting!

Translated by