ドキュメンテーション センター

  • 評価版
  • 製品アップデート

最新のリリースでは、このページがまだ翻訳されていません。 このページの最新版は英語でご覧になれます。

strfind

文字列内の文字の検出

構文

  • k = strfind(str, pattern)

説明

k = strfind(str, pattern) は、str 内で pattern の出現を検索します。出力 k は、str における pattern の各出現の開始インデックスを示します。pattern が見つからない場合、strfind は空の配列 [] を返します。関数 strfind は大文字と小文字を区別して検索を実行します。

  • str が文字列の場合、strfinddouble 型のベクトルを返します。

  • str がセル配列の場合、strfinddouble 型のベクトルのセル配列を返します。

すべて展開する

文字列パターンの検索

文字列 S を以下のように定義します。

S = 'Find the starting indices of the pattern string';

文字列 S でパターン in を検索します。

k = strfind(S, 'in')
k =

     2    15    19    45

S で見つかった部分文字列 in のインスタンスは 4 つです。

文字列 S でパターン In を検索します。

k = strfind(S, 'In')
k =

     []

strfind では大文字と小文字が区別されるため、文字列 InS で見つからず、k は空の配列になります。

文字列 S で空白を検索します。

k = strfind(S, ' ')
k =

     5     9    18    26    29    33    41

文字列 S には 7 つの空白があります。

文字列のセル配列での文字列の検索

文字列のセル配列 cstr を以下のように定義します。

 cstr = {'How much wood would a woodchuck chuck';
         'if a woodchuck could chuck wood?'};

セル配列 cstr でパターン wood を検索します。

 idx = strfind(cstr, 'wood')
idx = 

    [1x2 double]
    [1x2 double]

出力セル配列を調べて wood のインスタンスを見つけます。

 idx{:,:}
ans =

    10    23


ans =

     6    28

パターン wood は、1 番目の文字列のインデックス 10 と 23 にあり、2 番目の文字列のインデックス 6 と 28 にあります。

入力引数

すべて展開する

str - 検索対象のデータ文字列 | 文字列のセル配列

検索対象のデータ。文字列または文字列のセル配列として指定します。

データ型:char | cell

pattern - 検索パターン文字列

検索パターン。文字列として指定します。

データ型:char

出力引数

すべて展開する

k - pattern の出現のインデックス配列

pattern の出現のインデックス。配列として返されます。pattern が見つからない場合、k は空の配列 [] となります。

  • str が文字列の場合、kpattern の各出現のインデックスを示す double の配列です。

  • str が文字列のセル配列である場合、k は、各要素が str の対応する要素における pattern の各出現のインデックスに対応するセル配列である double 型の配列です。

詳細

すべて展開する

ヒント

  • 関数 strfind は、str 内の空の文字列のパターン '' は検索しません。

参考

| | | | | | | | |

この情報は役に立ちましたか?