matches

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

Описание

пример

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

Если 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"

Создайте шаблон, который совпадает с шестнадцатеричными числами. Чтобы соответствовать одной шестнадцатеричной цифре, задайте шаблон, соответствующий любой цифре, любой большой букве A- F, или любая строчная буква a- f. Затем задайте шаблон, который начинается с 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", игнорируя случай.

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

   0   0   1   0

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

str(TF)
ans = 
"Earth"

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

свернуть все

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

Шаблон поиска, заданный как один из следующих:

  • Строковые массивы

  • Вектор символов

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

  • pattern массив (с R2020b года)

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

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

.
Введенный в R2019b