1. Métodos para definir expresiones regulares
Hay dos formas de definir expresiones regulares: definición del constructor y definición de cantidad directa de expresión regular. Por ejemplo:
Copie el código de la siguiente manera: var reg1 = new Regexp ('/D {5, 11}');
var reg2 = // d {5, 12}/// Definición por cantidad directa
Las expresiones regulares miden directamente los caracteres
/o: caracteres nul (/u0000)
/T: TAB CARÁCTER (/U0009)
/N: NUEVO CARACTER (/U000A)
/V: personaje de pestaña vertical (/u000b)
/F: cambio de página (/u000c)
/R: Carácter de retorno del carro (/U000D)
/xnn: el carácter latino especificado por el número hexadecimal nn, por ejemplo, /x0a es equivalente a /n
/uxxxx: los caracteres unicode especificados por el número hexadecimal xxxx, por ejemplo /u0009 es equivalente a /t
/cx: el carácter de control ^x, por ejemplo, /cj es equivalente a la ruptura de línea /n
Caracteres de anclaje de expresión regular
^: Haga coincidir el comienzo de una cadena, en búsqueda de múltiples líneas, coincida con el comienzo de una línea
$: Haga coincidir el final de una cadena, en búsqueda de múltiples líneas, coincida con el final de una línea
/B: Haga coincidir el límite de una palabra.
/B: Haga coincidir la posición de los límites que no son de palabras
)
(?
Clases de personajes para expresiones regulares
[...]: Cualquier personaje de soportes cuadrados
[^...]: Cualquier personaje que no esté en los soportes cuadrados
.: Cualquier personaje excepto las salidas de línea y otros terminadores de línea unicode
/W: Cualquier palabra compuesta de caracteres ASCII, equivalente a [A-ZA-Z0-9]
/W: Cualquier palabra que no esté compuesta de caracteres ASCII es equivalente a [^A-ZA-Z0-9]
/S: cualquier espacio en blanco unicode
/S: cualquier caracteres en blanco no unicodo, tenga en cuenta que /w y /s son diferentes
/D: Cualquier número ASCII, equivalente a [0-9]
/D: Cualquier carácter excepto el número ASCII, equivalente a [^0-9]
[/b]: Backspace Cantidad directa (caso especial)
Repita la sintaxis del personaje para expresiones regulares
{n, m}: coincidir con el elemento anterior al menos n veces, pero no más que M veces
{n,}: coincidir con el elemento anterior n veces o más veces
{n}: coincidir con el elemento anterior n veces
?: Coincidir con el elemento anterior 0 o 1 vez, es decir, el elemento anterior es opcional, equivalente a {0, 1}
+: Coincidir con el elemento anterior 1 o más veces, equivalente a {1,}
*: Coincidir con el elemento anterior 0 o más veces, equivalente a {0,}
Selección, agrupación y caracteres de referencia de expresiones regulares
|: Seleccione, coincidiendo con la subexpresión a la izquierda o subexpresión a la derecha
(...): Combinación, combine varios elementos en una unidad, que puede modificarse por símbolos como "*", "+", "?" usar
(?: ...): Solo combine los elementos en una unidad, pero no recuerde que los personajes coincidan con la baraja
/N: coincide con el personaje que coincide con la primera vez que el grupo coincide. La agrupación de formulario no está codificada
Modificador de expresión regular
I: Realizar la coincidencia de casos insensibles
G: Realice un partido global, en resumen, encuentre todos los partidos, en lugar de detenerse después de encontrar el primero
M: Patrón de coincidencia de múltiples líneas, ^ coincide con el comienzo de una línea y el comienzo de una cadena, $ coincide con el final de una línea y el final de una cadena
Método de cadena para la coincidencia de patrones
Search (): Su argumento es una expresión regular, que devuelve la posición inicial de la primera subcadena para que coincida con él, y devuelve -1 si no hay una subcadena coincidente. Si el parámetro de búsqueda () no es una expresión regular, primero se convertirá en una expresión regular a través del constructor regexp, la búsqueda () no admite la búsqueda global porque ignora el modificador g. como:
La copia del código es la siguiente:
var s = "javaScript" .Search (/script/i);
Reemplazar (): se utiliza para realizar la recuperación y el reemplazo. Reciba dos parámetros, el primero es la expresión regular, y la segunda es la cadena a reemplazar. Si se establece la expresión regular, se realiza una sustitución global, de lo contrario, solo se reemplaza la primera subcadena de la coincidencia. Si el primer argumento no es una expresión regular, busque la cadena directamente en lugar de convertirla a una expresión regular. como:
Copie el código de la siguiente manera: var s = "javascript" .replace (/java/gi, "script");
Match (): Su argumento es una expresión regular. Si se establece el modificador G, se realiza la coincidencia global. como:
Copie el código de la siguiente manera: var d = '55 ff 33 HH 77 tt'.match (// d+/g);
Split (): Este método se usa para dividir la cadena que la llama a una matriz compuesta de sustros. como:
Copie el código de la siguiente manera: var d = '123,31,453,645'.split (', ');
var d = '21, 123, 44, 64, 67, 3'.split (// s*,/s*/); , "67", "3"]
2. Objeto regexp
Cada objeto regexp tiene 5 propiedades. La fuente de propiedad es una cadena de solo lectura que contiene texto de una expresión regular. La propiedad Global es un valor booleano de solo lectura para indicar si la expresión regular tiene un modificador g. La propiedad Ignorecase es un valor booleano de solo lectura para indicar si la expresión regular tiene un modificador i. La propiedad multiline es un valor booleano de solo lectura para indicar si la expresión regular tiene un modificador m. La propiedad LastIndex es un entero legible y de escritura.
Hay dos métodos para el objeto regexp. El parámetro Exec () es una cadena, y su función es similar a Match (). Si no se encuentra una coincidencia, regrese nulo. Independientemente de si la expresión regular tiene el modificador G, devolverá la misma matriz. Cuando el objeto de expresión regular llamando a Exec () tiene un modificador G, establece la propiedad de LastIndex del objeto de expresión regular actual a la posición de caracteres junto a la subcadena coincidente. Cuando la misma expresión regular llama a Exec () la segunda vez, comenzará a recuperarse de la cadena indicada por la propiedad de LastIdex, y si Exec () no encuentra resultados coincidentes, restablecerá LastIndex a 0. como:
La copia del código es la siguiente: var p = /java /g;
var text = "JavaScript es más divertido que Java!"
var r;
while ((r = p.exec (text))! = null) {
console.log (r, 'LastIndex:' + P.lastIndex);
}
Otro método es Test (). como:
La copia del código es la siguiente: var p = /java /i;
P.Test ('JavaScript');