[ Web Proxy ]
URL:
Viewing: https://developer.mozilla.org/es/docs/Web/JavaScript/Reference/Errors/Bad_regexp_flag [Back]  [Original]

SyntaxError: indicador de expresin regular no vlido "x" - JavaScript | MDN

Esta pgina ha sido traducida del ingls por la comunidad. Aprende ms y nete a la comunidad de MDN Web Docs.

View in English Always switch to English

SyntaxError: indicador de expresin regular no vlido "x"

La excepcin de JavaScript "indicador de expresin regular no vlido" se produce cuando las indicadores, definidas despus de la segunda barra en la expresin regular literal, no son de g, i, m, s, u o y.

En este artculo

Mensaje

SyntaxError: error de sintaxis en la expresin regular (Edge)
SyntaxError: marca de expresin regular no vlida "x" (Firefox)
SyntaxError: indicadores de expresin regular no vlidos (Chrome)

Tipo Error

SyntaxError

Qu sali mal?

Hay indicadores de expresin regular no vlidos en el cdigo. En una expresin regular literal, que consiste en un patrn encerrado entre barras, los indicadores se definen despus de la segunda barra. Tambin se pueden definir en la funcin constructora del objeto RegExp (segundo parmetro). Los indicadores de expresin regular se pueden usar por separado o juntos en cualquier orden, pero solo hay seis de ellos en ECMAScript.

Para incluir una bandera con la expresin regular, usa esta sintaxis:

js
var re = /patrn/indicadores;

o

js
var re = new RegExp("patrn", "indicadores");
Bandera Descripcin
g Bsqueda global.
i Bsqueda que no distingue entre maysculas y minsculas.
m Bsqueda multilnea.
s Permite que el punto (.) coincida con las nuevas lneas (agregado en ECMAScript 2018)
u Unicode; trata el patrn como una secuencia de puntos de cdigo Unicode
y Realiza una bsqueda "pegajosa" que coincida a partir de la posicin actual en la cadena de destino. Consulta sticky

Ejemplos

Solo hay seis indicadores de expresin regular vlidos.

js
/foo/bar;

// SyntaxError: indicador de expresin regular no vlido "b"

Tenas la intencin de crear una expresin regular? Una expresin que contiene dos barras se interpreta como una expresin regular literal.

js
let obj = {
  url: /docs/Web
};

// SyntaxError: indicador de expresin regular no vlido "W"

O pretendas crear una cadena en su lugar? Agrega comillas simples o dobles para crear una cadena literal.

js
let obj = {
  url: "/docs/Web",
};

Indicadores de expresin regular vlidos

Consulta la tabla anterior para ver las seis marcas de expresiones regulares vlidas que estn permitidas en JavaScript.

js
/foo/g;
/foo/gims;
/foo/uy;

Ve tambin


Web Proxy Viewer  |  New URL  |  Original Page