create a new pattern with a string
1 次查看(过去 30 天)
显示 更早的评论
i have a string pattern as below of length 24
str1 = 'AAAAAABBBBBBCCCCCCDDDDDD'
now i want to create a new pattern from the str1 with the length i give,
if i give length of new pattern as 72 answer should be
str2 = 'AAAAAABBBBBBCCCCCCDDDDDDAAAAAABBBBBBCCCCCCDDDDDDAAAAAABBBBBBCCCCCCDDDDDD'
that is it should repeat pattern in str1 upto the limit i want
if i give 84 answer should be
str3 = 'AAAAAABBBBBBCCCCCCDDDDDDAAAAAABBBBBBCCCCCCDDDDDDAAAAAABBBBBBCCCCCCDDDDDDAAAAAABBBBBB'
1 个评论
darshana alaiya
2023-4-2
I want matrix with repeated pattern in 1st 3rd and 5th row.
for eg. 1 18 25 0 0 0 0 0 0
3 23 27 0 0 0 0 0 0
0 0 0 5 28 29 0 0 0
0 0 0 7 33 31 0 0 0
so on...
采纳的回答
Andrei Bobrov
2017-10-4
编辑:Andrei Bobrov
2017-10-4
m = 84;
[s,~,c] = unique(str1,'stable');
n = numel(c);
out = s(c(rem(0:m-1,n)+1));
or
m = 84;
k = repmat(str1,1,ceil(m/numel(str1)));
out = k(1:m);
0 个评论
更多回答(1 个)
Walter Roberson
2017-10-4
temp = repmat(str1, ceil(Count/length(str1))) ;
str3 = temp(1:Count);
2 个评论
Walter Roberson
2017-10-4
temp = repmat(str1, 1, ceil(Count/length(str1))) ;
str3 = temp(1:Count);
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Characters and Strings 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!