"Si un trabajador quiere hacer bien su trabajo, primero debe afilar sus herramientas." - Confucio, "Las Analectas de Confucio. Lu Linggong"
Página delantera > Programación > ¿Cómo comprobar si una cadena contiene alguna de las subcadenas de una matriz en JavaScript?

¿Cómo comprobar si una cadena contiene alguna de las subcadenas de una matriz en JavaScript?

Publicado el 2024-11-06
Navegar:467

How to Check if a String Contains Any of the Substrings from an Array in JavaScript?

Encontrar subcadenas en una cadena con matrices de JavaScript

Para determinar si una cadena contiene alguna de las subcadenas de una matriz, JavaScript proporciona enfoques flexibles .

Array Some Method

El método some itera sobre una matriz, proporcionando una función de devolución de llamada para probar cada elemento. Para verificar subcadenas, use el método indexOf() para buscar cada elemento de la matriz dentro de la cadena:

if (substrings.some(function(v) { return str.indexOf(v) >= 0; })) {
    // There's at least one substring match
}

Expresión regular

Las expresiones regulares ofrecen una forma poderosa de hacer coincidir patrones de texto. Para buscar cualquier subcadena en la matriz dentro de la cadena, cree una expresión regular con todas las subcadenas como opciones alternativas y use el método test():

const regex = new RegExp(substrings.join("|"));
if (regex.test(str)) {
    // At least one substring matches
}

Ejemplo

Consideremos una serie de subcadenas:

const substrings = ["one", "two", "three"];

Cadena con coincidencia de subcadena

const str = "This string includes \"one\".";

// Using array some method
const someMethodMatch = substrings.some(v => str.includes(v));

// Using regular expression
const regexMatch = str.match(new RegExp(substrings.join("|")));

Cadena sin coincidencia de subcadena

const str = "This string doesn't have any substrings.";

// Using array some method
const someMethodNoMatch = substrings.some(v => str.includes(v));

// Using regular expression
const regexNoMatch = str.match(new RegExp(substrings.join("|")));

Resultados

Prueba MétodoCadena con coincidenciaCadena sin coincidencia
Arreglar algunosalgúnMethodMatch = truesomeMethodNoMatch = false
Expresión regularregexMatch = trueregexNoMatch = null
Último tutorial Más>

Descargo de responsabilidad: Todos los recursos proporcionados provienen en parte de Internet. Si existe alguna infracción de sus derechos de autor u otros derechos e intereses, explique los motivos detallados y proporcione pruebas de los derechos de autor o derechos e intereses y luego envíelos al correo electrónico: [email protected]. Lo manejaremos por usted lo antes posible.

Copyright© 2022 湘ICP备2022001581号-3