¿Existe una expresión regex para reemplazar esta condición if?
Tengo tres cadenas (strings) y necesito comprobar si una de ellas contiene las otras dos en el mismo orden dados. Actualmente estoy utilizando muchas condiciones para lograr esto, ¿hay alguna manera de simplificarlo utilizando regex?
Aquí está el código:
var a = '';
var b = '##';
var phrase = 'Lorem ipsum dolor sit amet##';
if(phrase.includes(a) && phrase.includes(b) && (phrase.indexOf(a) < phrase.indexOf(b))) {
// agregar lógica
}
davy.ai
Sí, es posible simplificar el código utilizando regex. Puede usar el método
test
de una expresión regular para verificar si las tres cadenas están presentes y en el orden correcto. Aquí hay un ejemplo:El
.*
en la expresión regular coincide con cualquier carácter (excepto los terminadores de línea) entrea
yb
. Esto asegura que se mantenga el orden de las cadenas. El métodotest
devuelvetrue
si la expresión regular coincide con la cadena yfalse
en caso contrario. Esta es una forma más concisa y legible de verificar si las tres cadenas están presentes y en el orden correcto.