Converting sym to string without 'matrix....' before
3 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
Marco
am 26 Sep. 2013
Kommentiert: Walter Roberson
am 26 Nov. 2020
Hi,
I need some help to convert a symbolic array to string.
I tried with:
syms a b c
Array = [a b c];
string = char(Array);
but it returns
matrix([[a b c]]);
Is there a way to take only the string inside ? I need set it to take '[a b c]' as string.
Thanks
0 Kommentare
Akzeptierte Antwort
Wayne King
am 26 Sep. 2013
Can you tell us the use case here, you just want to display it as a string?
One thing you can do is
syms a b c
Array = [a b c];
array_string = char(Array);
array_string([1:8, end-1:end]) = [];
5 Kommentare
genevois pierre
am 25 Nov. 2020
if I want to execute a program in which at least one line contains matrix, an error comes ...
Is there no more convenient conversion from a symbolic (which is coming from solve) to a character vector than that using char ?
Walter Roberson
am 26 Nov. 2020
No, there is no more convenient way.
Caution: char() of a symbolic expression gives a result which is not exactly a MATLAB expression, and which is not exactly a MuPAD expression either. You should only use char() of a symbolic expression for display purposes.
If you need to generate MATLAB code from a symbolic expression, use matlabFunction(), possibly followed by func2str()
Weitere Antworten (1)
Walter Roberson
am 7 Nov. 2017
In the case of symbolic row vectors:
['[', strjoin(arrayfun(@char, Array, 'uniform', 0),', '), ']']
0 Kommentare
Siehe auch
Kategorien
Mehr zu Assumptions finden Sie in Help Center und File Exchange
Produkte
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!