El símbolo de intercalación dentro de conjuntos en expresiones regulares JavaScript
Como sabes, el símbolo de intercalación dentro de [ ] crea
una negación cuando se escribe al principio de los corchetes.
Por lo tanto, es un metacarácter dentro
de estos corchetes. Para obtener el símbolo de intercalación como carácter,
necesitas escaparlo o quitarlo del
primer lugar.
Ejemplo
En el siguiente ejemplo, el patrón de búsqueda es:
el primer carácter es cualquier cosa excepto 'd',
luego dos letras 'x'.
let str = 'axx bxx ^xx dxx';
let res = str.replace(/[^d]xx/g, '!');
Como resultado, se escribirá lo siguiente en la variable:
'! ! ! dxx'
Ejemplo
Y ahora el patrón de búsqueda es: el primer carácter
es 'd' o '^', luego dos
letras 'x':
let str = 'axx bxx ^xx dxx';
let res = str.replace(/[d^]xx/g, '!');
Como resultado, se escribirá lo siguiente en la variable:
'axx bxx ! !'
Ejemplo
Puedes no quitar el símbolo de intercalación del primer lugar, y simplemente escaparlo usando la barra invertida, y pasará a representarse a sí mismo:
let str = 'axx bxx ^xx dxx';
let res = str.replace(/[\^d]xx/g, '!');
Como resultado, se escribirá lo siguiente en la variable:
'axx bxx ! !'
Problemas prácticos
Dada la cadena:
let str = '^xx axx ^zz bkk @ss';
Escribe una expresión regular que encuentre las cadenas según el patrón: intercalación o arroba, y luego dos letras latinas.
Dada la cadena:
let str = '^xx axx ^zz bkk @ss';
Escribe una expresión regular que encuentre las cadenas según el patrón: NO intercalación y no arroba, y luego dos letras latinas.
Dada la cadena:
let str = '^xx axx ^zz bkk';
Escribe una expresión regular que encuentre las cadenas según el patrón: no intercalación y no espacio, y luego dos letras latinas.