Red de conocimiento informático - Aprendizaje de programación - ¿Cómo determina js normal que una cadena debe contener letras mayúsculas, minúsculas, números y caracteres especiales? Lo veo claro. Debe incluirse. Por favor, dame algún consejo.

¿Cómo determina js normal que una cadena debe contener letras mayúsculas, minúsculas, números y caracteres especiales? Lo veo claro. Debe incluirse. Por favor, dame algún consejo.

¿Qué es lo que más les gusta además de un sistema estable y la posibilidad de iniciar de forma remota, nueve de cada diez personas mencionarán las expresiones regulares si les preguntamos cuál es su mayor quebradero de cabeza, quizá además? Hasta procedimientos complejos de control de procesos e instalación, también habrá expresiones regulares. Entonces, ¿qué son exactamente las expresiones regulares? ¿Cómo podemos realmente dominar las expresiones regulares y utilizarlas de forma correcta y flexible? Este artículo presentará esto, con la esperanza de ser útil para los lectores que estén ansiosos por comprender y dominar las expresiones regulares.

Primeros pasos

En pocas palabras, las expresiones regulares son una herramienta poderosa que se puede utilizar para la coincidencia y el reemplazo de patrones. Podemos encontrar expresiones regulares en casi todas las herramientas basadas en sistemas UNIX, como el editor vi, el lenguaje de scripting Perl o PHP y los programas shell awk o sed. Además, los lenguajes de secuencias de comandos del lado del cliente como JavaScript también brindan soporte para expresiones regulares. Se puede ver que las expresiones regulares han superado las limitaciones de un determinado lenguaje o sistema y se han convertido en un concepto y función ampliamente aceptados.

Las expresiones regulares permiten a los usuarios construir un patrón coincidente utilizando una serie de caracteres especiales y luego comparar el patrón coincidente con objetos de destino, como archivos de datos, entradas de programas y entradas de formularios de páginas WEB. objeto de comparación Si contiene un patrón coincidente, ejecute el programa correspondiente.

Por ejemplo, una de las aplicaciones más comunes de las expresiones regulares es verificar si el formato de la dirección de correo electrónico introducida por el usuario online es correcto. Si se utiliza una expresión regular para verificar que el formato de la dirección de correo electrónico del usuario es correcto, la información del formulario completada por el usuario se procesará normalmente; de ​​lo contrario, si la dirección de correo electrónico ingresada por el usuario no coincide con el patrón de expresión regular; Aparecerá un mensaje solicitando al usuario que vuelva a intentar ingresar la dirección de correo electrónico correcta. Se puede ver que las expresiones regulares juegan un papel importante en el juicio lógico de las aplicaciones WEB.

Sintaxis básica

Después de tener una comprensión preliminar de las funciones y efectos de las expresiones regulares, echemos un vistazo detallado al formato de sintaxis de las expresiones regulares.

La forma de la expresión regular es generalmente la siguiente:

/love/

La parte entre los delimitadores "/" es lo que estará en el destino objeto El patrón a coincidir. Los usuarios solo necesitan colocar el contenido del patrón que desean encontrar objetos coincidentes entre los delimitadores "/". Para permitir a los usuarios personalizar el contenido del patrón de manera más flexible, las expresiones regulares proporcionan "metacaracteres" especiales. Los llamados metacaracteres se refieren a aquellos caracteres especiales con significado especial en expresiones regulares, que se pueden usar para especificar el patrón de apariencia de sus caracteres principales (es decir, los caracteres delante de los metacaracteres) en el objeto de destino.

Los metacaracteres más utilizados incluyen: "+", "*" y "?". Entre ellos, el metacarácter "+" estipula que su carácter principal debe aparecer una o más veces en el objeto de destino, el metacarácter "*" estipula que su carácter principal debe aparecer cero o varias veces seguidas en el objeto de destino, y el carácter "?" Un carácter especifica que su objeto anterior debe aparecer cero o una vez en el objeto de destino.

A continuación, echemos un vistazo a las aplicaciones específicas de los metacaracteres de expresiones regulares.

/fo+/

Debido a que la expresión regular anterior contiene el metacarácter "+", significa que se puede comparar con "fool", "fo" o "football" en el objeto de destino. Coincide con una cadena en la que una o más letras o aparecen consecutivamente después de la letra f.

/eg*/

Debido a que la expresión regular anterior contiene el metacarácter "*", significa que se puede comparar con "fácil", "ego" o "huevo". en el objeto de destino Coincide con cadenas que contienen cero o más letras consecutivas g después de la letra e.

/Wil?/

Debido a que la expresión regular anterior contiene el metacarácter "?", significa que se puede combinar con "Win" o "Wilson" en el objeto de destino. Coincide con cadenas en las que cero o una letra l aparece consecutivamente después de i.

Además de los metacaracteres, los usuarios pueden especificar exactamente con qué frecuencia aparece un patrón en un objeto coincidente. Por ejemplo,

/jim/

La expresión regular anterior estipula que el carácter m puede aparecer de 2 a 6 veces seguidas en el objeto coincidente. Por lo tanto, la expresión regular anterior puede. ser igual que jimmy o jimmmmmy, etc. Coincidencias de cadenas.

Después de tener una comprensión preliminar de cómo usar expresiones regulares, echemos un vistazo a cómo usar otros metacaracteres importantes.

\s: se usa para hacer coincidir un solo carácter de espacio, incluidas las teclas de tabulación y los caracteres de nueva línea

\S: se usa para hacer coincidir todos los caracteres excepto un solo carácter de espacio

;

\d: se usa para hacer coincidir números del 0 al 9;

\w: se usa para hacer coincidir letras, números o caracteres de subrayado

\W: se usa para hacer coincidir todos los caracteres; que no coinciden con \w;

.: se utiliza para hacer coincidir todos los caracteres excepto los de nueva línea.

(Explicación: podemos considerar \s y \S y \w y \W como operaciones inversas entre sí)

A continuación, veremos cómo usar operaciones regulares. expresiones a través de ejemplos Utilice los metacaracteres anteriores en la fórmula.

/\s+/

La expresión regular anterior se puede utilizar para hacer coincidir uno o más caracteres de espacio en el objeto de destino.

/\d000/

Si tenemos un estado financiero complejo, podemos encontrar fácilmente todas las cantidades que suman miles de dólares mediante la expresión regular anterior.

Además de los metacaracteres que presentamos anteriormente, las expresiones regulares también tienen otro carácter especial único, a saber, el localizador. Los localizadores se utilizan para especificar dónde aparece el patrón coincidente en el objeto de destino.

Los localizadores más utilizados incluyen: "^", "$", "\b" y "\B". Entre ellos, el localizador "^" especifica que el patrón coincidente debe aparecer al principio de la cadena de destino, el localizador "$" especifica que el patrón coincidente debe aparecer al final del objeto de destino y el localizador \b especifica que el patrón coincidente debe aparecer al principio de la cadena de destino o en uno de los dos límites al final, y el localizador "\B" estipula que el objeto coincidente debe estar ubicado dentro de los dos límites del principio y el final del objetivo. cadena, es decir, el objeto coincidente no puede ser el principio ni el final de la cadena de destino. De manera similar, también podemos considerar "^" y "$" y "\b" y "\B" como dos conjuntos de localizadores que son operaciones inversas entre sí. Por ejemplo:

/^hell/

Debido a que la expresión regular anterior contiene el localizador "^", se puede usar con el objeto de destino con "hell", "hello" o Coincide con cadenas que comienzan con "hellhound".

/ar$/

Debido a que la expresión regular anterior contiene el localizador "$", se puede hacer coincidir con el objeto de destino que termina en "car", "bar" o "ar". "La cadena coincide.

/\bbom/

Debido a que el patrón de expresión regular anterior comienza con el localizador "\b", se puede usar con el objeto de destino que comienza con "bomb" o "bom". " Coincidencias de cadenas.

/man\b/

Debido a que el patrón de expresión regular anterior termina con el localizador "\b", se puede usar con "humano", "mujer" o " Coincide con cadenas terminando en "hombre".

Para facilitar a los usuarios la configuración de patrones coincidentes de manera más flexible, las expresiones regulares permiten a los usuarios especificar un cierto rango en el patrón coincidente sin limitarse a caracteres específicos. Por ejemplo:

/[A-Z]/

La expresión regular anterior coincidirá con cualquier letra mayúscula en el rango de la A a la Z.

/[a-z]/

La expresión regular anterior coincidirá con cualquier letra minúscula en el rango de la a a la z.

/[0-9]/

La expresión regular anterior coincidirá con cualquier número en el rango del 0 al 9.

/([a-z][A-Z][0-9])+/

La expresión regular anterior coincidirá con cualquier cadena que consta de letras y números, como "aB0" y pronto. Una cosa a la que los usuarios deben prestar atención aquí es que puede usar "()" en expresiones regulares para combinar cadenas. El contenido del símbolo "()" también debe aparecer en el objeto de destino. Por lo tanto, la expresión regular anterior no coincidirá con una cadena como "abc" porque el último carácter de "abc" es una letra y no un número.

Si queremos implementar una expresión regular similar a la operación "O" en la lógica de programación y seleccionar cualquiera de los múltiples patrones diferentes para hacer coincidir, podemos usar el carácter de barra vertical "|".