# count

Count occurrences of pattern in strings

## Syntax

``A = count(str,pat)``
``A = count(str,pat,'IgnoreCase',true)``

## Description

example

````A = count(str,pat)` returns the number of occurrences of `pat` in `str`.If `pat` is an array containing multiple patterns, then `count` returns the sum of the occurrences of all elements of `pat` in `str`.```

example

````A = count(str,pat,'IgnoreCase',true)` ignores case when counting the number of occurrences of `pat`.```

## Examples

collapse all

Count the number of occurrences of the string, `red`, in string arrays.

Starting in R2017a, you can create a string using double quotes.

`str = "paired with red shoes"`
```str = "paired with red shoes" ```

If you are using R2016b, then use the `string` function instead of double quotes.

To count the occurrences of `red`, use the `count` function. In this example, the result is 2 because `red` is also part of the word `paired`.

`A = count(str,"red")`
```A = 2 ```

Create a 2-by-1 string array.

```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" ```

Count the occurrences of `red` in each element of `str`. If `str` is a string array or cell array of character vectors, then `A` is a numeric array that has the same size.

`A = count(str,"red")`
```A = 2×1 3 1 ```

Since R2020b

Create a string array that contains addresses.

`str = ["221B Baker St.","Tour Eiffel Champ de Mars","4059 Mt Lee Dr."]`
```str = 1x3 string "221B Baker St." "Tour Eiffel Champ..." "4059 Mt Lee Dr." ```

To count the digits in each address, first create a pattern that matches a single digit. The number of times this pattern occurs in a string equals the number of digits in the string.

Create the pattern by calling the `digitsPattern` function with `1` as the input argument. When you do this, it matches a single digit (such as `2`) instead of an arbitrary sequence of digits (such as `221` or `4059`).

`pat = digitsPattern(1)`
```pat = pattern Matching: digitsPattern(1) ```

Then call the `count` function with `str` and `pat` as inputs.

`A = count(str,pat)`
```A = 1×3 3 0 4 ```

Similarly, you can count the number of letters (not including digits, spaces, or punctuations marks) by using the pattern created by `lettersPattern(1)`.

`A = count(str,lettersPattern(1))`
```A = 1×3 8 21 7 ```

Count sequences consisting of one or more digits and then one letter. You can build more complex patterns by combining simple patterns. In this case, `digitsPattern + lettersPattern(1)` matches `221B`.

```pat = digitsPattern + lettersPattern(1); A = count(str,pat)```
```A = 1×3 1 0 0 ```

For a list of functions that create pattern objects, see `pattern`.

Count the total number of occurrences of `red` and `blue` in a string array.

Starting in R2017a, you can create strings using double quotes.

```str = ["red green blue"; "green red blue green blue"]```
```str = 2x1 string "red green blue" "green red blue green blue" ```

`count` returns 2 for the first string because `red` and `blue` each occur once. `count` returns 3 for the second string because `red` occurs once and `blue` occurs twice.

`A = count(str,["red","blue"])`
```A = 2×1 2 3 ```

Count the number of occurrences of the letter `E` in a string array that contains names, ignoring case.

Starting in R2017a, you can create strings using double quotes.

`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 ```

Count the number of times `al` occurs in the word `alphabetical`.

`chr = 'alphabetical'`
```chr = 'alphabetical' ```
`A = count(chr,'al')`
```A = 2 ```

## Input Arguments

collapse all

Input text, specified as a string array, character vector, or cell array of character vectors.

Search pattern, specified as one of the following:

## Extended Capabilities

Introduced in R2016b