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) 不间断窄空格
相关推荐
Zenova EdgeOS5 小时前
Go 工业边缘错误处理实战:用 errors 构建可追溯错误链
开发语言·数据库·golang
取名真是5 小时前
Python 算法知识点从基础到进阶
开发语言·python·算法
FRing035 小时前
vue2干货总结3(computed计算属性、watch监听器)
开发语言·前端·vue.js·vue2
Fatbobman(东坡肘子)6 小时前
快速消失的硬盘容量 -- 肘子的 Swift 周报 #160
开发语言·人工智能·redis·ios·swiftui·iphone·swift
揽星河..6 小时前
【C语言】底层程序设计
c语言·开发语言
JavaPub-rodert6 小时前
从零搭建通用管理后台:ShiyuAdmin 的 Go、React 与 RBAC 实践
开发语言·react.js·golang
海的透彻7 小时前
dockerfile如何快速构建容器(java服务)
java·开发语言
code2cat8 小时前
Java工具篇之Gradle:用任务图组织构建与交付
java·开发语言·单元测试·gradle
北京中科新远科技8 小时前
高速交换机端口预算怎么做?下行、上联、拆分和冗余计算框架
开发语言·php
xiaoye-duck8 小时前
《C++ 项目:手写大模型接入 SDK》DeepSeek接口设计(下):流式响应实现和测试
开发语言·网络·c++·语言模型