Bonsoir à tous et à toutes,
Je rencontre un petit problème avec matlab et j'espère que vous pourrez m'aider, je commence à être réellement à court d'idées. Je vais tenter d'être explicite.
Voici la situation :
Je dois concaténer trois variables char de dimensions différentes tel que :
Rep4 = [Rep1, B, Rep3];
Rep 1, B et Rep 3 étant trois variables de type char. (Je pourrais les concaténer de la manière suivante y = char(Rep1, B, Rep3) mais si je fais ça je me retrouve avec une variable inutilisable d'un point de vue édition.. la variable devient impossible à lire, je ne m'explique pas plus en avant sur ce point car je vais m'y perdre)
Pour concaténer de la première manière, il faut que les trois matrices associées aux variables soient de même dimensions :
Donc j'ai quelque chose du style :
Rep1 = 1x3400
B = 23 x 100
Rep3 = 1x2500
J'ai donc créer une petite fonction qui me fait passer B de 23 x 100 à quelque chose du style 1x300.
Voici la fonction :
Et la plupart du temps cela fonctionne de manière impeccable, je fais : Rep4 = [Rep1, MatCharEnVect(B), Rep3] et j'obtiens ce que je veux.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15 function [y] = MatCharEnVect(x); A = size(x, 1); B = size(x, 2); k = 0; C = []; for k = 1 : A; C = [C, x(k,[1:B])]; y = strrep(C, ' ', ''); end
Mais de temps en temps (et c'est là que j'ai un problème), je me retrouve avec un résultat complètement différent. Je m'explique avec un exemple :
1 ) J'ai :
B = test
Test matlab pour forum
Test
TEST TEST TEST
Dimensions : 22x23 char
Je fais y = MatCharEnVect(B)
Et j'obtiens :
y =
*test
Test matlab pour forum
Test
TEST TEST TEST
Dimensions : 1x56 char
Mais PARFOIS, avec certains textes, j'obtiens :
y =
*testTest matlab pour forumTestTEST TEST TEST
Dimensions : 1x45 char
Mon hypothèse, c'est que dans certains de mes textes, les sauts de lignes sont enregistrés (d'une manière qui m'est totalement inconnue) alors que dans les autres cas cette tabulation n'est pas enregistrée.
Je me demandais si quelqu'un pouvait m'expliquer d'où vient ce problème. Et si possible, comment enregistrer cette tabulation dans le texte que je récupère.
Bonne soirée à vous, j'espère vraiment que vous pourrez m'aider sur ce point. Je n'en peux vraiment plus.
(Il faut savoir que le contenu de la variable B citée précédemment est obtenue à partir d'un get(), donc peut être peut-on spécifier que l'on veut aussi récupérer les données de tabulations avec cette fonction.. Je n'ai en tout cas pas réussi à déterminer comment)
Partager