matches

Определите, совпадает ли шаблон со строками

Описание

пример

TF = matches(str,pat) возвращает 1 TRUE) если заданный шаблон совпадает с str, и возвращает 0 ложь) в противном случае.

Если pat массив, содержащий несколько шаблонов, затем matches возвращает 1 если это находит что какой-либо элемент pat соответствия str.

пример

TF = matches(str,pat,'IgnoreCase',true) игнорирует регистр при определении если pat соответствия str.

Примеры

свернуть все

Создайте массив строк.

str = ["Mercury","Venus","Earth","Mars"]
str = 1x4 string
    "Mercury"    "Venus"    "Earth"    "Mars"

Найдите строки тем соответствием "Earth". Возвратите логический массив, где положение каждого элемента равняется 1 соответствует положению соответствующей строки в str.

TF = matches(str,"Earth")
TF = 1x4 logical array

   0   0   1   0

Отобразите соответствие путем индексации назад в str использование TF.

str(TF)
ans = 
"Earth"

Начиная с R2020b

Создайте массив строк, который представляет числа. Некоторые числа являются шестнадцатеричными числами с 0x префикс.

str = ["137","0xA7B","0x1248","72","0xG7"]
str = 1x5 string
    "137"    "0xA7B"    "0x1248"    "72"    "0xG7"

Создайте шаблон, который совпадает с шестнадцатеричными числами. Чтобы совпадать с одной шестнадцатеричной цифрой, задайте шаблон, который совпадает с любой цифрой, любая прописная буква AF, или любая строчная буква aF. Затем задайте шаблон, который начинается с 0x и сопровождается любым количеством шестнадцатеричных цифр.

pat = digitsPattern(1) | characterListPattern("A","F") | characterListPattern("a","f");
pat = "0x" + asManyOfPattern(pat)
pat = pattern
  Matching:

    "0x" + asManyOfPattern(digitsPattern(1) | characterListPattern("A","F") | characterListPattern("a","f"))

Найдите элементы str то соответствие. (Последний элемент не соответствует, потому что он содержит ошибку: G не шестнадцатеричная цифра.)

TF = matches(str,pat)
TF = 1x5 logical array

   0   1   1   0   0

Чтобы отобразить соответствия, индексируйте в str использование TF.

str(TF)
ans = 1x2 string
    "0xA7B"    "0x1248"

Для списка функций, которые создают объекты шаблона, смотрите pattern.

Для получения дополнительной информации о шестнадцатеричных числах смотрите Шестнадцатеричные и Двоичные значения.

Создайте массив строк.

str = ["Mercury","Venus","Earth","Mars"]
str = 1x4 string
    "Mercury"    "Venus"    "Earth"    "Mars"

Найдите элементы str то соответствие любой "Venus" или "Earth".

TF = matches(str,["Venus","Earth"])
TF = 1x4 logical array

   0   1   1   0

Отобразите соответствия путем индексации в str использование TF.

str(TF)
ans = 1x2 string
    "Venus"    "Earth"

Создайте массив строк.

str = ["Mercury","Venus","Earth","Mars"]
str = 1x4 string
    "Mercury"    "Venus"    "Earth"    "Mars"

Найдите элемент str это совпадает с "earth"'IgnoringCase' .

TF = matches(str,"earth","IgnoreCase",true)
TF = 1x4 logical array

   0   0   1   0

Отобразите соответствующую строку.

str(TF)
ans = 
"Earth"

Входные параметры

свернуть все

Введите текст в виде массива строк, вектора символов или массива ячеек из символьных векторов.

Поисковый шаблон в виде одного из следующего:

  • Массив строк

  • Символьный вектор

  • Массив ячеек из символьных векторов

  • pattern массив (начиная с R2020b)

Расширенные возможности

Генерация кода C/C++
Генерация кода C и C++ с помощью MATLAB® Coder™.

Введенный в R2019b