Main Content

# digitBoundary

Match boundary between digit characters and non-digit characters

Since R2020b

## Syntax

``pat = digitBoundary``
``pat = digitBoundary(type)``

## Description

````pat = digitBoundary` creates a pattern that matches the start or end of a run of digit characters. `digitBoundary` can be negated using the `~` operator. When negated, `~digitBoundary` matches the boundary between any two characters except at the start or end of a run of digits.```

example

````pat = digitBoundary(type)` specifies whether to match at the start or end of a run of digits. `type` can be `'start'`, `'end'`, or `'either'` (default).```

example

## Examples

collapse all

Use `digitBoundary` to divide a string along boundaries between digits and nondigit characters.

Create a pattern that matches any digit boundaries.

```txt = "123 abc .?! def 456"; pat = digitBoundary;```

Use `replace` to insert "|" characters at the matched boundaries.

`replace(txt,pat,"|")`
```ans = "|123| abc .?! def |456|" ```

Use the `"start"` and `"end"` options for `digitBoundary` to match the boundary between digits and nondigit characters.

Create a string that contains several different character types. Create a pattern that matches any characters between the `"start"` boundary for digits and an `"end"` boundary.

```txt = "123 abc .?! def 456"; pat = digitBoundary("start") + wildcardPattern(1,inf) + digitBoundary("end");```

Extract the pattern.

`boundaries = extract(txt,pat)`
```boundaries = 2x1 string "123" "456" ```

Use the `~` operator to negate `digitBoundary`. This matches the boundary between two characters when both are digit characters or neither is a digit character.

Create a string that contains several different character types. Create a pattern that matches a negated `digitBoundary`.

```txt = "123 abc .?!"; pat = ~digitBoundary;```

Use `replace` to insert `"|"` characters to show where ~`digitBoundary `matches.

`boundaries = replace(txt,pat,"|")`
```boundaries = "1|2|3 |a|b|c| |.|?|!|" ```

## Input Arguments

collapse all

Boundary type, specified as `'start'`, `'end'`, or `'either'`.

Data Types: `char` | `string`

## Output Arguments

collapse all

Pattern expression, returned as a `pattern` object.

## Version History

Introduced in R2020b