count
文字列内でのパターンの出現回数をカウント
説明
例
出現回数をカウントする
string 配列内での文字列 red
の出現回数をカウントします。
二重引用符を使用して string を作成できます。
str = "paired with red shoes"
str = "paired with red shoes"
red
の出現をカウントするには、関数 count
を使用します。この例の結果は 2 です。これは、red
が単語 paired
にも含まれているためです。
A = count(str,"red")
A = 2
2 行 1 列の string 配列を作成します。
str = ["red green red red blue blue green"; "green red blue green green blue"]
str = 2x1 string
"red green red red blue blue green"
"green red blue green green blue"
str
の各要素で red
の出現をカウントします。str
が string 配列または文字ベクトルの cell 配列である場合、A
は同じサイズの数値配列です。
A = count(str,"red")
A = 2×1
3
1
パターンを使用して数字と文字をカウントする
R2020b 以降
住所を含む string 配列を作成します。
str = ["221B Baker St.","Tour Eiffel Champ de Mars","4059 Mt Lee Dr."]
str = 1x3 string
"221B Baker St." "Tour Eiffel Champ de Mars" "4059 Mt Lee Dr."
各住所の数字をカウントするには、最初に単一の数字と一致するパターンを作成します。このパターンが文字列内で出現する回数は、文字列の桁数と等しくなります。
1
を入力引数として指定して関数 digitsPattern
を呼び出し、パターンを作成します。これを行うと、任意の一連の数字 (221
または 4059
) ではなく、1 つの数字 (2
など) と一致します。
pat = digitsPattern(1)
pat = pattern
Matching:
digitsPattern(1)
次に、str
と pat
を入力として指定して関数 count
を呼び出します。
A = count(str,pat)
A = 1×3
3 0 4
同様に、lettersPattern(1)
で作成されたパターンを使用して、文字 (数字、スペース、句読点を含まない) の数をカウントできます。
A = count(str,lettersPattern(1))
A = 1×3
8 21 7
1 桁以上の数字の後に 1 つの文字で構成されるシーケンスをカウントします。単純なパターンを組み合わせて、より複雑なパターンを作成できます。この例では、digitsPattern + lettersPattern(1)
が 221B
と一致します。
pat = digitsPattern + lettersPattern(1); A = count(str,pat)
A = 1×3
1 0 0
pattern オブジェクトを作成する関数の一覧については、pattern
を参照してください。
複数の部分文字列のすべての出現
string 配列内での red
と blue
の合計出現回数をカウントします。
string は二重引用符を使用して作成できます。
str = ["red green blue"; "green red blue green blue"]
str = 2x1 string
"red green blue"
"green red blue green blue"
最初の string では red
と blue
がそれぞれ 1 回ずつ出現するため、count
は 2 を返します。2 番目の string では red
が 1 回、blue
が 2 回出現するため、count
は 3 を返します。
A = count(str,["red","blue"])
A = 2×1
2
3
大文字小文字の区別を無視
大文字小文字の区別を無視して、名前を含む string 配列内での文字 E
の出現回数をカウントします。
string は二重引用符を使用して作成できます。
str = ["Edgar Allan Poe";"Louisa May Alcott"]
str = 2x1 string
"Edgar Allan Poe"
"Louisa May Alcott"
A = count(str,'E','IgnoreCase',true)
A = 2×1
2
0
文字ベクトル内での部分文字列をカウント
単語 alphabetical
内での al
の出現回数をカウントします。
chr = 'alphabetical'
chr = 'alphabetical'
A = count(chr,'al')
A = 2
入力引数
拡張機能
tall 配列
メモリの許容量を超えるような多数の行を含む配列を計算します。
C/C++ コード生成
MATLAB® Coder™ を使用して C および C++ コードを生成します。
使用上の注意事項および制限事項:
str
とpattern
は、string スカラー、文字ベクトル、または 1 つ以下の文字ベクトルを含む cell 配列でなければなりません。
スレッドベースの環境
MATLAB® の backgroundPool
を使用してバックグラウンドでコードを実行するか、Parallel Computing Toolbox™ の ThreadPool
を使用してコードを高速化します。
この関数はスレッドベースの環境を完全にサポートしています。詳細については、スレッドベースの環境での MATLAB 関数の実行を参照してください。
分散配列
Parallel Computing Toolbox™ を使用して、クラスターの結合メモリ上で大きなアレイを分割します。
使用上の注意事項および制限事項:
pat
は string 配列、文字ベクトル、または文字ベクトルの cell 配列でなければなりません。
詳細については、分散配列を使用した MATLAB 関数の実行 (Parallel Computing Toolbox)を参照してください。
バージョン履歴
R2016b で導入
MATLAB コマンド
次の MATLAB コマンドに対応するリンクがクリックされました。
コマンドを MATLAB コマンド ウィンドウに入力して実行してください。Web ブラウザーは MATLAB コマンドをサポートしていません。
Select a Web Site
Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: .
You can also select a web site from the following list:
How to Get Best Site Performance
Select the China site (in Chinese or English) for best site performance. Other MathWorks country sites are not optimized for visits from your location.
Americas
- América Latina (Español)
- Canada (English)
- United States (English)
Europe
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)