Main Content

digitBoundary

匹配数字字符和非数字字符之间的边界

自 R2020b 起

说明

示例

pat = digitBoundary 创建与一系列数字字符的开始或结束相匹配的模式。digitBoundary 可以使用 ~ 运算符求反。当求反时,~digitBoundary 匹配任意两个字符之间的边界,但一系列数字的开始或结束位置除外。

示例

pat = digitBoundary(type) 指定匹配一系列数字的开始还是结束位置。type 可以是 'start''end''either'(默认值)。

示例

全部折叠

使用 digitBoundary 在数字字符和非数字字符之间的边界处拆分字符串。

创建一个匹配任何数字边界的模式。

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

使用 replace 在匹配的边界处插入“|”字符。

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

使用 digitBoundary"start""end" 选项来匹配数字与非数字字符之间的边界。

创建一个包含几种不同类型字符的字符串。创建一个模式,该模式匹配数字的 "start" 边界和 "end" 边界之间的任何字符。

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

提取该模式。

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

使用 ~ 运算符对 digitBoundary 求反。当两个字符都是数字字符或都不是数字字符时,此模式匹配这两个字符之间的边界。

创建一个包含几种不同类型字符的字符串。创建一个与求反的 digitBoundary 匹配的模式。

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

使用 replace 插入 "|" 字符以显示与 ~digitBoundary 匹配的位置。

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

输入参数

全部折叠

边界类型,指定为 'start''end''either'

数据类型: char | string

输出参量

全部折叠

模式表达式,以 pattern 对象形式返回。

扩展功能

基于线程的环境
使用 MATLAB® backgroundPool 在后台运行代码或使用 Parallel Computing Toolbox™ ThreadPool 加快代码运行速度。

版本历史记录

在 R2020b 中推出