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 字符的字符,此顺序意味着大写字母在小写字母之前。数字和某些标点符号也在字母之前。

​

相关推荐
朝朝辞暮i5 小时前
C++ 第 23 课:class —— 开始真正进入面向对象
开发语言·c++·算法
Evand J5 小时前
【MATLAB例程】三维RRT+APF避障路径规划与到达角(AOA)定位算法|三维路径优化与定位仿真例程
算法·matlab·路径规划·代码·定位·rrt·aoa
小师兄吃牛肉6 小时前
C语言篇:宏
c语言·开发语言
郑同学的笔记6 小时前
【c++随笔28】strcmp 和 memcmp对比
开发语言·c++
言乐67 小时前
Python根据无法识别搜索词找出可能输入内容模型
开发语言·python·django·virtualenv·pygame
weixin_307779137 小时前
有限产能智能排产与动态重排智能体:从需求解构到技术实现
开发语言·人工智能·算法·架构
kakakahahahaha7 小时前
Windows C盘临时文件清理:%temp%、Windows Temp、Prefetch、Windows.old与hiberfil.sys处理指南
c语言·开发语言·windows
朝朝辞暮i7 小时前
C++ 第 27 课:智能指针 shared_ptr
开发语言·c++·算法
朝朝辞暮i7 小时前
C++ 第 29 课:回调函数 Callback
开发语言·c++·算法
笨笨饿7 小时前
140_AI新手村MCP与Skills是干嘛的
开发语言·人工智能·python·stm32·单片机·嵌入式硬件·物联网