carácter de escape-carácter de escape
carácter representa un carácter, que contiene dos significados,
1. Letra
2. Símbolo
转义: 改变含义
字符: 字母、符号
转义字符: 把 字母、符号 的含义改变了
Nota: Hay dos cosas que a menudo se pasan por alto, descuidan y subestiman aquí 转义规则
,
1. 一对一
, es decir, 转义
solo para el que está lejos de él , o se lleva a cabo , 2. solo se lleva a cabo , y no se anidará ni se escapará recursivamente ( por ejemplo: en Python parece no serlo ), si no entiende aquí, simplemente mire hacia abajo y entenderá lo que significa cuando lo vea al final.\
最近
一个
字母
符号
转义
表层转义
\\\\
\\
\
uno
En el lenguaje informático \
, 转义
la función realizada por
es en realidad una regulación hecha por el hombre, que \
le otorga un significado especial al aumento. \
Es un símbolo 反斜杠
en sí mismo. Al mismo tiempo 编程语言
, también tiene un significado que le indica que comience. haciéndolo 编程语言
cuando lo veas.转义
Ya está funcionando.
Los lenguajes como c family, java y python deben acatar esta regla, 编程语言
una vez que la veas \
sabrás que \
lo siguiente 字符
tiene un nuevo significado, y \
lo siguiente 字符
ya no es su significado original.
Mire las dos letras de escape más típicas en lenguaje informático
LF/NL (Salto de línea/Nueva línea) Salto de línea \n
CR (Retorno de carro) Retorno de carro\r
Cuando no hay 字母
n
before \
, es una letra ordinaria del inglés (la 14 en el alfabeto), que puede estar junto a otras letras para formar una palabra, cuál es su significado, como: sun, on, know but , when
there
is 字母
n
delante \
, ya no n
es , y tiene un nuevo significado. Para este significado, debe verificar las reglas del lenguaje informático 编程语言
cuando \
vea. estatuto), y luego encontró su nuevo significado 回车
(retorno de carro ), y luego 编程语言
lo implementó 回车
para 命令
lograrlo 回车功能
.
Tome python
el idioma como ejemplo.
python
El idioma es un idioma con su propio 解释器
idioma. Por cierto 解释器
, cuando escribe un fragmento de código en el Bloc de notas y lo guarda como py
un archivo , y luego lo entrega directamente al sistema operativo para su ejecución, el sistema operativo estarás confundido. Quieres jaja, quieres jaja, y estás perdido por el programa que escribiste. En este momento, necesita python
usar integrado 解释器
para ayudarlo a traducir el código al sistema operativo, y el sistema operativo entenderá que está permitiendo que el sistema operativo inicie el lanzador de bombas nucleares, y luego el sistema operativo ejecutará su código paso a paso python
解释器
de acuerdo para destruir el mundo.
Entonces, cuando está escribiendo un programa, de repente desea que su programa genere una nueva línea (cuando el programa se está ejecutando), ¿qué debe hacer?
Entonces algunos estudiantes deberían haber dicho: No es tan simple como presionar Enter. Sí, presionar Enter puede cambiar la línea, pero este cambio de línea es solo para que usted lo vea (al programar), y lo que quiere es que otros lo lean. Cuando vea un salto de línea al ejecutar su programa (hay dos tiempos diferentes al escribir el programa y cuando el programa se está ejecutando), no puede correr con su programa. Cuando el programa se ejecuta hasta el paso de salto de línea, el guapo Puedes presionar la tecla Enter tú mismo. Si solo una computadora está ejecutando tu programa, entonces si todo el país está ejecutando tu programa, es posible que no puedas manejarlo incluso si te conviertes en Monkey King.
Puede 转义字符
resolver este problema complicado usando el código,
escriba el código en su programa \n
, cuando el programa se esté ejecutando, python \
sabrá \
la siguiente n
ya no una letra ordinaria cuando el programa se está ejecutando, así que intente explicarlo de inmediato y 编程语言
observe arriba en la tabla de reglas Cuando n
es el significado de salto de línea, se lleva a cabo la operación de salto de línea. Su programa se llevará a cabo sin problemas y la gente de todo el país sonreirá.
Ok, ahora sabemos que un 字母
seguimiento común \
tiene un nuevo significado, ¿y 符号
qué?
dos
No nos andemos con rodeos, y vayamos directamente a las difíciles, \\
¿a qué te refieres?
Toma las reglas anteriores, y cuando aparezcan en el programa \
, 编程语言
comenzarás a prepararte para 转义
el procesamiento. \
Esto último 字母、符号
significa que esto 字母、符号
tiene un nuevo significado. ,
pero esto Por primera \
lo siguiente no es 字母
, pero 符号
, después de verificar la tabla de reglas, lo siguiente se vuelve ordinario (texto, literal o impresión literal), y ya no tiene otras funciones y significados adicionales, es es un texto puramente literal ,\
符号
符号
符号
Ejecutemos un fragmento de código para probar:
1. \n
\n
Significa una nueva línea, por lo que la letra a y la letra b se imprimen en líneas diferentes
2. Cuando \\n
python encuentra la primera \
, comienza a prepararse para 转义
el trabajo y descubre que no es 字母
, por lo que es 字符
, así que proceda Explique la tabla de reglas de búsqueda, elimine \
la función adicional y el significado redundante del segundo (es decir, el segundo \n
no necesita escapar de los caracteres detrás de él), y solo mantenga su propio 文本符号
significado como uno, por lo que el símbolo se imprime y las letras \n
, el resultado de impresión final es a\nb
Visible , para generar el código python 文本符号
\
, debe agregar uno delante de él \
, es decir\\
3
Aumenta la dificultad y
profundiza la comprensión
Veamos primero el código:
Esto muestra que\
solo se escapa el carácter más cercano a él.
De hecho, si el código en la impresión está marcado con un número de serie, podemos verlo en la impresión. El resultado debe ser el segundo, cuarto y sexto\
, y el primero, tercero y quinto\
completan su trabajo de escape y son consumidos.
cuatro
¿ Habría alguna diferencia si python
usáramos el módulo regex nuevamente en ?re
Se puede ver que para nuestra cadena dada str_test que contiene 6 símbolos \
de barra invertida , la regla de coincidencia
que re
especificamos es: \\\\
, por lo que cuando el programa se ejecuta aquí, aparece \
, por lo que es necesario comenzar a interpretar y escapar. Hay 4 consecutivos \
. De acuerdo con 一对一
el principio de evasión, el primero y el tercero participaron en el trabajo de interpretación del escape y \
fueron consumidos, y el segundo y el cuarto \
fueron privados de funciones y significados adicionales como textos puramente 符号
literales . solo se realiza , y no se realizará ningún anidamiento ni escape recursivo. Por lo tanto, los dos restantes no realizarán la segunda ronda de trabajo de escape .\\
转义规则
表层转义
符号
\\
\
Por lo tanto, re
de acuerdo con las reglas de coincidencia, busque caracteres dobles de texto (dos barras invertidas) en la cadena str_test \\
y encuentre 3 pares en total \
, es decir, 3\\
Al ver esto, debes entenderlo completamente y no debes confundirte.
De lo contrario, no podrá participar en la tercera guerra mundial.
el 07 de marzo de 2023 martes