在 MATLAB 中确定哪些字符是字母

Ammar Ali 2022年5月11日
在 MATLAB 中确定哪些字符是字母

本教程将讨论使用 Matlab 中的 isletter() 函数确定哪些字符是字母。

使用 MATLAB 中的 isletter() 函数检查哪些字符是字母

字符串或字符数组可以包含字母,而像房子地址这样的数字可以包含字母和数字。如果我们想查找给定的字符、字符数组或字符串是否包含字母,我们可以使用 Matlab 的内置函数 isletter()

在单个字符输入的情况下,isletter() 函数根据字符返回 1 或 0。如果字符是字母,isletter() 函数将返回 1 或 true,如果字符不是字母,则 isletter() 函数将返回 0 或 false。

例如,让我们检查给定的字符是否是字母。请参阅下面的代码。

c = '5';
isletter(c)

输出:

ans =

  logical

   0

在输出中,结果为 0,这意味着给定的字符不是字母。

我们还可以检查字符串或字符数组是否包含字母。如果字符串或字符数组中的字符是字母,则 isletter() 函数将在其位置返回 1,在其他位置返回 0。

例如,让我们创建一个包含字母和数字的字符串,并检查字符串中有多少个字母。请参阅下面的代码。

c = '25 street';
isletter(c)

输出:

ans =

  1×9 logical array

   0   0   0   1   1   1   1   1   1

在输出中,我们可以看到前三个字符不是字母,因为前三个位置输出为 0,其余字符是字母,因为输出的其余部分包含 1。

空格也被认为是一个字符,为什么我们可以看到输出在空格的位置包含一个 0。

输入可以是标量、向量、矩阵或多维数组。输出将是一个逻辑数组。

isnumeric() 函数可用于检查输入是否为数字,isstring() 函数可用于检查输入是否为字符串。

我们还可以在判断输入字符串是否包含字母后对其进行操作。

例如,假设我们要提取字符串中存在的字母。在这种情况下,我们可以使用 isletter() 函数来检查字符串中是否存在字母。

如果字符串中存在字母,我们将使用 find() 函数找到它们的索引,然后我们可以使用这些索引提取它们。请参阅下面的代码。

OldString = '25 street'
l = isletter(OldString);
indices = find(l==1);
NewString = OldString(indices)

输出:

OldString =

    '25 street'


NewString =

    'street'

在输出中,新字符串仅包含字母。

Author: Ammar Ali
Ammar Ali avatar Ammar Ali avatar

Hello! I am Ammar Ali, a programmer here to learn from experience, people, and docs, and create interesting and useful programming content. I mostly create content about Python, Matlab, and Microcontrollers like Arduino and PIC.

LinkedIn Facebook

相关文章 - MATLAB Character