Contenido principal

matches

Determinar si un patrón coincide con cadenas

Descripción

TF = matches(str,pat) devuelve 1 (true) si el patrón especificado coincide con str, y devuelve 0 (false) en caso contrario. Si str es un arreglo, TF es un arreglo del mismo tamaño.

Si pat es un arreglo que contiene múltiples patrones, matches devuelve 1 si encuentra que cualquier elemento de pat coincide con str.

ejemplo

TF = matches(str,pat,IgnoreCase=true) ignora las mayúsculas y las minúsculas cuando se determina si pat coincide con str.

ejemplo

Ejemplos

contraer todo

Cree un arreglo de cadenas.

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

Encuentre las cadenas que coincidan con "Earth". Devuelva un arreglo lógico en el que la posición de cada elemento igual a 1 se corresponda con la posición de una cadena coincidente en str.

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

   0   0   1   0

Muestre la coincidencia indexando nuevamente en str utilizando TF.

str(TF)
ans = 
"Earth"

Desde la versión R2020b

Cree un arreglo de cadenas que represente números. Algunos de los números son números hexadecimales con el prefijo 0x.

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

Cree un patrón que coincida con los números hexadecimales. Para que coincida con un solo dígito hexadecimal, especifique un patrón que coincida con cualquier dígito, cualquier letra mayúscula A-F o cualquier letra minúscula a-f. A continuación, especifique un patrón que comience con 0x y al que le siga cualquier número de dígitos hexadecimales.

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"))

Encuentre los elementos de str que coinciden. (El último elemento no coincide porque contiene un error: G no es un dígito hexadecimal.)

TF = matches(str,pat)
TF = 1×5 logical array

   0   1   1   0   0

Para mostrar las coincidencias, indexe en str utilizando TF.

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

Para ver una lista de las funciones que crean objetos de patrones, consulte pattern.

Para obtener más información sobre los números hexadecimales, consulte Valores binarios y hexadecimales.

Cree un arreglo de cadenas.

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

Encuentre los elementos de str que coincidan con "Venus" o "Earth".

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

   0   1   1   0

Muestre las coincidencias indexando en str utilizando TF.

str(TF)
ans = 1×2 string
    "Venus"    "Earth"

Cree un arreglo de cadenas.

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

Encuentre el elemento de str que coincida con "earth", sin distinguir entre mayúsculas y minúsculas.

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

   0   0   1   0

Muestre la cadena coincidente.

str(TF)
ans = 
"Earth"

Argumentos de entrada

contraer todo

Texto de entrada, especificado como arreglo de caracteres, vector de caracteres o arreglo de celdas de vectores de caracteres.

Patrón de búsqueda, especificado como una de las siguientes opciones:

  • Arreglo de cadenas

  • Vector de caracteres

  • Arreglo de celdas de vectores de caracteres

  • Arreglo de pattern (desde la versión R2020b)

Capacidades ampliadas

expandir todo

Generación de código C/C++
Genere código C y C++ mediante MATLAB® Coder™.

Historial de versiones

Introducido en R2019b