MATLAB中whitespacePattern函数用法

目录

语法

说明

示例

匹配空白字符

替换非标准空白

更正错误的间距


whitespacePattern函数的功能是匹配空白字符。

语法

cpp 复制代码
pat = whitespacePattern
pat = whitespacePattern(N)
pat = whitespacePattern(minCharacters,maxCharacters)

说明

pat = whitespacePattern 创建一个模式,该模式匹配由一个或多个空白字符(如空格和制表符)组成的文本。

pat = whitespacePattern(N) 精确匹配由 N 个空白字符组成的文本。

pat = whitespacePattern(minCharacters,maxCharacters) 匹配由大于或等于 minCharacters 个且小于或等于 maxCharacters 个空白字符组成的文本。inf 是 maxCharacters 的有效值。whitespacePattern 是贪婪模式,匹配的空白字符数量尽可能接近 maxCharacters 个。

示例

匹配空白字符

使用 whitespacePattern 匹配非标准空白字符,如 char(160)。创建一个字符向量元胞数组,其中每个字符向量包含一个不同的空白字符,包括制表符和 newline 字符。

cpp 复制代码
whitespaces = {' ' char(9) newline char(32) char(160)}
whitespaces = 1×5 cell
    {' '}    {'→'}    {'↵'}    {' '}    {' '}

使用 whitespacePattern 构建一个匹配空白字符的模式。使用 contains 确定哪些字符向量包含有效空白字符。

cs 复制代码
pat = whitespacePattern;
contains(whitespaces,pat)
ans = 1×5 logical array

   1   1   1   1   1

替换非标准空白

使用 whitespacePattern 将非标准空白替换为标准 ' ' 字符。将 txt 创建为一个字符向量。

cpp 复制代码
txt = ['This' char(9) 'char' newline 'vector' char(160) 'has' char(32) 'nonstandard' char(8193) 'spaces']
txt = 
    'This	char
     vector has nonstandard spaces'

使用 whitespacePattern 将 pat 创建为一个匹配单个空白字符的模式对象。用单个空白替换匹配的文本部分。

cpp 复制代码
pat = whitespacePattern(1);
txt = replace(txt,pat," ")
txt = 
'This char vector has nonstandard spaces'

更正错误的间距

当存在多个空白字符时,使用 whitespacePattern 来更正间距。

创建字符串 txt 变量。使用 whitespacePattern 将 pat 创建为一个匹配两个或多个空白字符的模式对象。用单个空白替换匹配的文本部分。

cs 复制代码
txt = "Text looks   strange    with    extra    spaces";
pat = whitespacePattern(2,inf);
txt = replace(txt,pat," ")
txt = 
"Text looks strange with extra spaces"

参数说明

N --- 要匹配的精确字符数

要匹配的字符数,指定为非负整数标量。

minCharacters --- 要匹配的最小字符数。

要匹配的最小字符数,指定为非负整数标量。

maxCharacters --- 要匹配的最大字符数

要匹配的最大字符数,指定为非负整数标量。

pat --- 模式表达式

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

定义

空白是表示水平或垂直间距的任一字符或一系列字符。在呈现时,空白字符不对应于可见标记,但通常会占据页面上的某个区域。常见的空白字符包括:

实义空白字符 描述
char(32) 标准空白字符 ' '
char(133) 下一行
char(160) 不间断空格
char(8199) 图窗空格
char(8239) 不间断窄空格
相关推荐
侃侃_天下1 天前
最终的信号类
开发语言·c++·算法
echoarts1 天前
Rayon Rust中的数据并行库入门教程
开发语言·其他·算法·rust
Aomnitrix1 天前
知识管理新范式——cpolar+Wiki.js打造企业级分布式知识库
开发语言·javascript·分布式
每天回答3个问题1 天前
UE5C++编译遇到MSB3073
开发语言·c++·ue5
伍哥的传说1 天前
Vite Plugin PWA – 零配置构建现代渐进式Web应用
开发语言·前端·javascript·web app·pwa·service worker·workbox
小莞尔1 天前
【51单片机】【protues仿真】 基于51单片机八路抢答器系统
c语言·开发语言·单片机·嵌入式硬件·51单片机
我是菜鸟0713号1 天前
Qt 中 OPC UA 通讯实战
开发语言·qt
JCBP_1 天前
QT(4)
开发语言·汇编·c++·qt·算法
Brookty1 天前
【JavaEE】线程安全-内存可见性、指令全排序
java·开发语言·后端·java-ee·线程安全·内存可见性·指令重排序
百锦再1 天前
[特殊字符] Python在CentOS系统执行深度指南
开发语言·python·plotly·django·centos·virtualenv·pygame