フィルターのクリア

How do I get an element from a string?

9 ビュー (過去 30 日間)
Kratos
Kratos 2015 年 2 月 21 日
編集済み: Kratos 2015 年 2 月 21 日
Say I have a vector representing a row and column which is (5,6) and I have a
vec = (5,6);
string = ['oNTitsr
reaqBtr
sggtalu
imnvomo
nresgLm
eamhomt
lfHoan
sn mnin']
When I do
a = string(vec);
I get a = 'ne'
and when I do
a = string(5,6);
a = 'L'
I am suppose to get 'L' but I keep getting 'ne' when I run my code.
vec = (5,6) is just an example it can be anything. How do I do it?
  2 件のコメント
Andrew Newell
Andrew Newell 2015 年 2 月 21 日
Is that really the code you used? It should produce errors right from the start. The line
vec = (5,6);
results in
Error: Expression or statement is incorrect--possibly unbalanced (, {, or [.
The string definition you used gives
Error: String is not terminated properly.
Kratos
Kratos 2015 年 2 月 21 日
編集済み: Kratos 2015 年 2 月 21 日
It was suppose to be vec = [5,6]

サインインしてコメントする。

採用された回答

Andrew Newell
Andrew Newell 2015 年 2 月 21 日
編集済み: Andrew Newell 2015 年 2 月 21 日
Here is some code that works:
vec = {5,6};
S = ['oNTitsr';
'reaqBtr';
'sggtalu';
'imnvomo';
'nresgLm';
'eamhomt';
' lfHoan';
'sn mnin'];
S(5,6)
S(vec{:})
Some features of this code that are needed:
  1. Each row of the char array is surrounded by quotes; semicolons makes it a column vector.
  2. They all have to have the same length - hence the space at the beginning of ' lfHoan'.
  3. A cell array is used for vec. Using {:} returns a list:
vec{:}
ans =
5
ans =
6

その他の回答 (0 件)

カテゴリ

Help Center および File ExchangeCharacters and Strings についてさらに検索

タグ

Community Treasure Hunt

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

Start Hunting!

Translated by