Manual de referencia de JavaScript RegExp

Objeto RegExp

Una expresión regular es un patrón de caracteres.

Este patrón se utiliza para la función de "búsqueda y reemplazo" de coincidencias de patrones de texto.

En JavaScript, el objeto RegExp es un objeto que tiene propiedades y métodos.

Sintaxis

/pattern/modifier(s);

Ejemplo

let pattern = /codew3c/i;

Inténtalo tú mismo

Ejemplo de explicación:

codew3c Patrón a buscar
/codew3c/ Expresiones regulares
/codew3c/i Expresiones regulares sin distinción de mayúsculas y minúsculas

Para obtener información sobre expresiones regulares, lea nuestra Tutoriales de RegExp JavaScript.

Modificador

Los modificadores se utilizan para realizar búsquedas sin distinción de mayúsculas y minúsculas y globales:

Modificador Descripción
g Ejecutar coincidencias globales (buscar todas las coincidencias en lugar de detenerse después de la primera coincidencia).
i Ejecutar coincidencias sin distinción de mayúsculas y minúsculas.
d Ejecutar coincidencias de subcadena.
m Ejecutar coincidencias en múltiples líneas.

Corchetes

Los corchetes se utilizan para buscar caracteres dentro de un rango:

Expresión regular Descripción
[abc] Buscar cualquier carácter entre paréntesis.
[^abc] Buscar cualquier carácter que no esté entre corchetes.
[0-9] Buscar cualquier número del 0 al 9.
[^0-9] Buscar cualquier carácter que no esté entre paréntesis (cualquier carácter no numérico).
(x|y) Buscar cualquier opción especificada.

Caracteres meta

Los caracteres meta son caracteres que tienen un significado especial:

Caracteres meta Descripción
. Buscar un solo carácter, excepto el carácter de nueva línea o final de línea.
\w Buscar caracteres alfanuméricos.
\W Buscar caracteres no alfanuméricos.
\d Buscar números.
\D Buscar caracteres no numéricos.
\s Buscar caracteres blancos.
\S Buscar caracteres no blancos.
\b Buscar coincidencias en el principio o final de una palabra, comenzando con: \bHI, terminando con: HI\b.
\B Buscar coincidencias que no estén en el principio o final de una palabra.
\0 Buscar el carácter NULL.
\n Buscar el salto de línea.
\f Buscar el salto de página.
\r Buscar el retorno de carro.
\t Buscar el tabulador.
\v Buscar el tabulador vertical.
\xxx Buscar el carácter especificado por el número octal xxx.
\xdd Buscar el carácter especificado por el número hexadecimal dd.
\udddd Buscar el carácter Unicode especificado por el número hexadecimal xxxx.

Cantidades

Cantidades Descripción
n+ Coincidir con cualquier cadena de texto que contenga al menos una n.
n* Coincidir con cualquier cadena de texto que contenga cero o más n.
n? Coincidir con cualquier cadena de texto que contenga cero o una n.
n{X} Coincidir con cualquier cadena de texto que contenga X n.
n{X,Y} Coincidir con cualquier cadena de texto que contenga de X a Y n.
n{X,} Coincidir con cualquier cadena de texto que contenga al menos X n.
n$ Coincidir con cualquier cadena de texto que acabe con n.
^n Coincidir con cualquier cadena de texto que comience con n.
?=n Coincidir con cualquier cadena de texto que tenga la cadena especificada n después.
?!n Coincidir con cualquier cadena de texto que no tenga la cadena especificada n después.

Atributos del objeto RegExp

Atributos Descripción
constructor Devuelve la función que crea el prototipo del objeto RegExp.
global Comprobar si se ha establecido el modificador "g".
ignoreCase Comprobar si se ha establecido el modificador "i".
lastIndex Especificar el índice de inicio para la siguiente coincidencia.
multiline Comprobar si se ha establecido el modificador "m".
source Devuelve el texto del patrón RegExp.

Métodos del objeto RegExp

Método Descripción
compile() Desusado en la versión 1.5. Compila la expresión regular.
exec() Probar coincidencias en una cadena de texto. Devuelve la primera coincidencia.
test() Probar coincidencias en una cadena de texto. Devuelve true o false.
toString() 返回正则表达式的字符串值。

patternattributes

pattern attributes

Parámetros

Parámetros pattern Es una cadena que especifica el patrón de la expresión regular u otra expresión regular.

Parámetros attributes Es una cadena opcional que contiene las propiedades "g", "i" y "m", que se utilizan respectivamente para especificar coincidencia global, coincidencia sensible a mayúsculas y minúsculas y coincidencia de múltiples líneas. Antes de la estandarización de ECMAScript, no se admitía la propiedad m. Si pattern Es una expresión regular en lugar de una cadena, debe omitirse este parámetro.

Valor de retorno

Un nuevo objeto RegExp, con el patrón y las banderas especificados. Si los parámetros pattern Es una expresión regular en lugar de una cadena, el constructor RegExp() creará un nuevo objeto RegExp con el mismo patrón y banderas que el RegExp especificado.

Si no se usa el operador new, sino que se usa RegExp() como una función de llamada, su comportamiento es el mismo que al llamar con el operador new, solo que cuando pattern Es una expresión regular, solo devuelve patterny ya no crea un nuevo objeto RegExp.

Lance

SyntaxError - Si pattern No es una expresión regular válida, o attributes Contiene caracteres además de "g", "i" y "m", lance esta excepción.

TypeError - Si pattern Es un objeto RegExp, pero no se omite attributes Parámetros, lance esta excepción.

Admisión de navegador

/regexp/ es una característica de ECMAScript1 (ES1).

Todos los navegadores admiten completamente ES1 (JavaScript 1997):

Chrome IE Edge Firefox Safari Opera
Chrome IE Edge Firefox Safari Opera
Admite Admite Admite Admite Admite Admite

Métodos del objeto String que admiten expresiones regulares

Método Descripción
search Recuperar valores que coinciden con expresiones regulares.
match Encontrar una o más coincidencias de expresiones regulares.
replace Reemplazar subcadenas que coinciden con expresiones regulares.
split Dividir una cadena en un array de cadenas.