Los conceptos de varios símbolos ([ ] ^ {} ?: ?= ?!) en expresiones regulares Regex
Ejemplo:
Ejemplo:
Ejemplo:
Ejemplo:
(Swift4) Haga coincidir Swift4 y obtenga Esta coincidencia luego se almacena para su uso posterior;
(Swift4)\1 coincide con Swift4Swift4, donde \1 significa que se usa la coincidencia almacenada (la primera coincidencia almacenada), lo que equivale a hacer coincidir Swift4 dos veces;
(Swift3)(Swift4)\2 coincide con Swift3Swift4Swift4, donde \2 significa que se usa la segunda coincidencia almacenada, es decir, Swift4 (por supuesto, la primera coincidencia es: Swift3);
(?:Swift3)(Swift4)\1 coincide con Swift3Swift4Swift4, que es lo mismo que (Swift3)(Swift4)\2;
Debido al uso de ?: entre paréntesis, el primero coincide con ( Swift3) no se almacena, solo se almacena la segunda coincidencia (Swift4);
Si se escribe como (?:Swift3)(Swift4)\2, la expresión regular es incorrecta porque la segunda coincidencia no coincidencias almacenadas;
¿La función de ?: es hacer coincidir la cadena del patrón Swift3, pero la coincidencia no se almacenará.
Swift(?=4) coincide con Swift seguido de 4 a la derecha.
Entre ellos (?=) se llama: coincidencia de verificación previa directa, (?=4) significa; primero vea si hay 4. Si lo hay, haga coincidir el Swift a la izquierda de 4; si no, continúe verificando a la derecha. Este proceso es una verificación previa hacia adelante.
Swift(?!4) coincide con Swift que no sigue a 4 a la derecha.
Entre ellos (?!) se llama: búsqueda directa no coincide, (?!4) significa; primero vea si hay 4. Si no, es decir, si no es igual a 4, haga coincidir el Swift de la izquierda; si lo hay, continúe verificando hacia la derecha. Este proceso es una verificación previa hacia adelante para detectar discrepancias.
(?<=4)Swift coincide con Swift seguido de 4 a la izquierda, es decir, la quinta palabra de Swift, caracteres con índices del 26 al 30
donde (?<; =) se llama: coincidencia de búsqueda previa inversa, (? <= 4) significa ver primero si hay 4, si es así, haga coincidir el Swift a la derecha de 4, si no, continúe verificando a la derecha, este proceso; es una coincidencia de captación previa inversa.
(?
donde (?
Ejemplo 1: Contraseña segura (debe contener tres caracteres: números, letras minúsculas y letras mayúsculas, es decir, una combinación de estos tres caracteres, y no se pueden utilizar caracteres especiales, y la longitud es de entre 8- 16).
Ejemplo 2: Contraseña segura (debe contener números y letras, es decir, una combinación de números y letras, y no se pueden utilizar caracteres especiales, y la longitud es de entre 8 y 16).
Ejemplo 3: Contraseña segura (debe contener cuatro caracteres: números, letras minúsculas, letras mayúsculas y caracteres especiales, es decir, una combinación de estos cuatro caracteres, donde los caracteres especiales son distintos de números, letras minúsculas, y letras mayúsculas) de otros caracteres, longitud entre 8-16).
Ejemplo 4: Unir palabras que terminen con dos letras iguales, como por ejemplo: zoológico, éxito, todos, etc.
Ejemplo 5: Verificación de importe, con precisión de 2 decimales.
Ejemplo 6: Verificación de importe, conservando hasta 2 decimales, rango de importe: 0,01-10000,00.
Explicación de la expresión regular:
(0\.\d?[1-9]) Coincidencia: 0,01~0,09 / 0,1~0,9 / 0,11~0,99
(0\.[1-9]0) ? Coincidencias: 0,10 / 0,20 / 0,30 / 0,40 / 0,50 / 0,60 / 0,70 / 0,80 / 0,90
([1-9]\d{0 , 3}(\.\d{1,2})?) Coincidencia: 1,00~9999,99
(10000(\.0{1,2})?) Coincidencia: 10000 o 10000,0 o 10000,00< / p>
Ejemplo 7: Eliminar 0, 1, 2, 8, 9 y 10 de números enteros positivos.
Explicación de la expresión regular:
(\d{3,}) coincide: 3 dígitos y más
(1[1-9]) coincide: 2 ¿Número de dígitos que comienza con 1
([2-9]\d)? Coincidencia: número de 2 dígitos que no comienza con 1
([34567]{1}) : 1 dígito excepto 0, 1, 2, 8, 9