Main Content

letterBoundary

Match boundary between letter characters and nonletter characters

Description

example

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

example

pat = letterBoundary(type) specifies whether to match at the start or end of a run of letters and numbers. type can be 'start', 'end', or 'either' (default).

Examples

collapse all

Use letterBoundary to divide a string along boundaries between letters and nonletter characters.

Create a pattern that matches any letter boundaries.

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

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

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

Use the "start" and "end" options for letterBoundary to match the boundary between letters and nonletter characters.

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

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

Extract the pattern.

boundaries = extract(txt,pat)
boundaries = 2x1 string
    "abc"
    "def"

Use the ~ operator to negate letterBoundary. This matches boundaries between two characters when both are letters or neither are letters.

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

txt = "123 abc .?!";
pat = ~letterBoundary;

Use replace to insert "|" characters to show where ~letterBoundary 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.

Introduced in R2020b