MATLAB中characterListPattern函数用法

目录

语法

说明

示例

在文本中查找元音字母

提取在某字母范围内的字母

查找以元音字母开头的单词

将人名按字母顺序分组


characterListPattern函数的功能是匹配列表中的字符。

语法

cpp 复制代码
pat = characterListPattern(characters)
pat = characterListPattern(startCharacter,endCharacter)

说明

**pat = characterListPattern(characters)**创建与 characters 中包含的任何字符匹配的模式。

**pat = characterListPattern(startCharacter,endCharacter)**匹配范围在 startCharacter 和 endCharacter 之间的任何字符,包括 startCharacter 和 endCharacter。

示例

在文本中查找元音字母

定义一个模式表达式 pat,它使用 characterListPattern 只匹配小写元音字母 a、e、i、o 和 u。从字符串中提取该模式。

cs 复制代码
txt = "She sells sea shells by the sea shore.";
pat = characterListPattern("aeiou");
vowels = extract(txt,pat)
vowels = 10x1 string
    "e"
    "e"
    "e"
    "a"
    "e"
    "e"
    "e"
    "a"
    "o"
    "e"

提取在某字母范围内的字母

使用 characterListPattern 提取在指定字母范围内的字母。

定义一个模式表达式 pat,它使用 characterListPattern 仅匹配从 a 到 g 的小写字母。从字符串中提取该模式。

cs 复制代码
txt = "ABCDEFGHIJKLMONPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz";
pat = characterListPattern("a","g");
letters1 = extract(txt,pat)
letters1 = 7x1 string
    "a"
    "b"
    "c"
    "d"
    "e"
    "f"
    "g"

查找以元音字母开头的单词

将 pat 创建为一个 pattern 对象,该对象使用 letterBoundary、characterListPattern 和 lettersPattern 匹配以元音字母开头的单词。提取该模式。

cs 复制代码
txt = "Do you like words like armadillo, echidna, iguana, ostrich, & unicorn?";
pat = letterBoundary + characterListPattern("aeiou") + lettersPattern;
words = extract(txt,pat)
words = 5x1 string
    "armadillo"
    "echidna"
    "iguana"
    "ostrich"
    "unicorn"

将人名按字母顺序分组

创建字符串 names 变量。使用 characterListPattern 创建一个匹配字符 A 到 G 的模式。使用 startsWith 查找以 A 到 G 开头的人名。对 H 到 P 和 Q 到 Z 重复此过程。

cs 复制代码
names = ["Andres" "Betty" "Chris" "David" "Etsuko" "Fredrick"...
        "Gaston" "Hasina" "Ian" "Jose" "Karen" "Larry" "Malia"...
        "Nick" "Omar" "Patrick" "Quincy" "Rajesh" "Shruti"...
        "Tau" "Uma" "Veronica" "Wendy" "Xiao"...
        "Yakov" "Zhanna"];
    
NameGroup1 = names(startsWith(names,characterListPattern('A','G')))    
NameGroup1 = 1x7 string
    "Andres"    "Betty"    "Chris"    "David"    "Etsuko"    "Fredrick"    "Gaston"

NameGroup2 = names(startsWith(names,characterListPattern('H','P')))    
NameGroup2 = 1x9 string
    "Hasina"    "Ian"    "Jose"    "Karen"    "Larry"    "Malia"    "Nick"    "Omar"    "Patrick"

NameGroup3 = names(startsWith(names,characterListPattern('Q','Z')))
NameGroup3 = 1x10 string
    "Quincy"    "Rajesh"    "Shruti"    "Tau"    "Uma"    "Veronica"    "Wendy"    "Xiao"    "Yakov"    "Zhanna"

参数说明

characters --- 要匹配的字符的列表

要匹配的字符的列表,指定为字符向量或字符串标量。

startCharacter --- 开头字符

要匹配的字母范围的开头字符,指定为包含单个字符的字符标量或字符串标量。

endCharacter --- 结尾字符

要匹配的字母范围的结尾字符,指定为包含单个字符的字符标量或字符串标量。

pat --- 模式表达式

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

文本的字符顺序

​MATLAB® 使用 UTF-16 字符编码方案将字符存储为 Unicode®。字符和字符串数组按 UTF-16 代码点顺序进行排序。对于同时也是 ASCII 字符的字符,此顺序意味着大写字母在小写字母之前。数字和某些标点符号也在字母之前。

相关推荐
我命由我123451 分钟前
Python Flask 开发 - Flask 快速上手(Flask 最简单的案例、Flask 处理跨域、Flask 基础接口)
服务器·开发语言·后端·python·学习·flask·学习方法
大飞记Python2 分钟前
从零配置Python测试环境:详解路径、依赖与虚拟环境最佳实践
开发语言·python·环境配置·安装目录
zhougl99624 分钟前
区分__proto__和prototype
开发语言·javascript·原型模式
weixin_4209476434 分钟前
php composer update 指定包的分支非tag
开发语言·php·composer
一水鉴天36 分钟前
整体设计 定稿 之6 完整设计文档讨论及定稿 之4 整体设计数据库设计规范(含两个版本)
开发语言·人工智能·架构
Evand J1 小时前
【EKF定位滤波例程】三维空间(XYZ)速度与位置观测与滤波(使用扩展卡尔曼滤波EKF),状态量和观测量都是非线性的。附MATLAB例程下载链接
开发语言·matlab
AM越.1 小时前
Java设计模式超详解--观察者设计模式
java·开发语言·设计模式
云上漫步者1 小时前
深度实战:Rust交叉编译适配OpenHarmony PC——sys_locale完整适配案例
开发语言·后端·rust
guygg881 小时前
基于MATLAB的精密星历内插实现方案
开发语言·matlab
专注VB编程开发20年1 小时前
c#语法和java相差多少
java·开发语言·microsoft·c#