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) 不间断窄空格
相关推荐
闲人陈二狗8 分钟前
在vue3中如何使用图标库fontawesome
开发语言·javascript·ecmascript
莲动渔舟10 分钟前
Python自学 - 递归函数
开发语言·python
Dio98011 分钟前
S7-200采集频率信号
开发语言
SkyrimCitadelValinor23 分钟前
python【数据结构】
开发语言·数据结构·python
一小只因程序猿29 分钟前
Java类创建对象时成员变量、语句块、构造函数的加载顺序
java·开发语言
小林熬夜学编程34 分钟前
【Linux网络编程】第二十弹---熟练I/O多路转接:深入解析select机制与实战
linux·运维·服务器·c语言·开发语言·网络·c++
吴冰_hogan37 分钟前
ThreadLocal详解:深入探讨导致JVM内存泄露的原因及预防措施
java·开发语言·jvm
shaxin观yin39 分钟前
24强网wp
开发语言·python
tmacfrank42 分钟前
Coroutine 基础八 —— Flow 操作符(二)
android·开发语言·kotlin
机器学习之心1 小时前
路径规划 | 基于极光PLO优化算法的三维路径规划Matlab程序
算法·数学建模·matlab