他言語からMatlabに来た人がハマりそうなlength()の話
物の見事にハマった
lengthで文字列の長さを取ろうとしたら思ったようにとれず、コマンドウインドウでこんなコマンドを叩いてみた。
コマンドウインドウ
> hoge = "somestring";
> length(hoge)
ans =
1
違う、そうじゃない。
stringで文字数が欲しい場合はstrlengthで。
lengthではなくstrlengthを使うと文字数が取れます。
コマンドウインドウ
> hoge = "somestring";
> strlength(hoge)
ans =
10
やったぜ
そもそもstringは最近実装された型
Matlabのドキュメンテーションで確認すると、stringが実装されたのは「R2016b」(=2016年後期)。
めちゃんこ最近です。
文字配列を数値配列に変換するやり方として「str2num」や「str2double」がありますが、「strだからstringだろ」とstringを突っ込むと前者はエラー、後者は空の行列になります。
Matlabで文字列を扱うときはcharを使いましょう。
Author And Source
この問題について(他言語からMatlabに来た人がハマりそうなlength()の話), 我々は、より多くの情報をここで見つけました https://qiita.com/ginger893/items/e94b8783d79f717c8197著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .