FIND関数で文字を特定することはできますか?
17 views (last 30 days)
Show older comments
FIND関数で文字を特定することはできますか?
2 Comments
Megumi Fukuda
on 18 Apr 2021
こんにちは。
「FIND関数で文字を特定すること」の具体的な中身を教えていただけると、より良いアドバイスが得られると思います。
find関数で文字が文字列の中に存在するかを判別することは可能です。
example_string = 'Accelerating the pace of engineering and science';
find(example_string=='e');
などとすると、文字列(exmaple_string)の中に特定の文字(e)があるか判別できます。
strfindを使うと、より簡単にいろいろな操作ができると思います。
こちらのページも参考になるかもしれません。ご覧ください。
https://jp.mathworks.com/matlabcentral/answers/203877-using-find-function-for-char
Answers (1)
Megumi Fukuda
on 21 Apr 2021
Edited: Megumi Fukuda
on 21 Apr 2021
> strfindを使っても、カテゴリー配列のルールになるから、その後の演算がうまくできませんよね。例えば、この行内に該当する文字列が1個、別の行内にも1個あった場合、それらを足して2と表示することはできませんよね。
> [1]+[1]~=2
strfindはstring 配列, 文字ベクトル,文字ベクトルの cell 配列に対して利用できます。strfindを利用して文字列の出現回数を数えたい場合、このように書くことができると思います。
letters = ['R','G','B','B','G','B'];
str_idx=strfind(letters, 'G');
str_count = length(str_idx);
入力にカテゴリカル配列を使いたいという場合は、別の方法を検討されると良いかと思います。
0 Comments
See Also
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!