Définition
Les caractères d'échappement font partie de la grammaire formelle de nombreux langages de programmation, formats de données et protocoles de communication.
Escapesequencesusuallyhavetwofunctions.Thefirstistoencodeasyntacticentity, suchasadevicecommandorspecialdatathatcannotbedirectlyrepresentedbythealphabet.Thesecondfunction, alsocalledcharacterreference, isusedtoindicatecharactersthatcannotbeenteredbythekeyboardinthecurrentcontext (suchasthecarriagereturninastring), orcharactersthathaveundesiredmeaninginthecurrentcontext (suchasCThedoublequotecharacter "inthelanguagestringcannotappeardirectlyandmustbeexpressedbyanescapesequence) .Inthelattercase, la situation theescapesequenceisacombinationoftheescapecharacteritselfandaquotedcharacterLetter (digraph).
Caractères de contrôle
Les caractères d'échappement ne sont pas des caractères de contrôle ; les caractères de contrôle ne sont pas des caractères d'échappement.
Table de caractères
Tous les caractères d'échappement et leurs significations correspondantes :
Caractère d'échappement | Sens | Valeurcode ASCII(décimal) |
\une | Cloche(BEL) | 007 |
\b | Retour arrière(BS),changerlapositionactuellePasseràlacolonneprécédente | 008 |
\F | Saut de page (FF), déplacer la position actuelle au début de la page suivante | 012 |
\n | Saut de ligne (LF), déplacer la position actuelle au début de la ligne suivante | 010 |
\r | Retour chariot (CR), déplacer la position actuelle sur cette ligne Début | 013 |
\t | Tabulation horizontale (HT) (ignorer la position TAB suivante) | 009 |
\v | Tabulation verticale (VT) | 011 |
\\ | représenteune barre oblique inverse``\' | 092 |
\' | représente un guillemet simple (apostrophe) | 039 |
\" | représenteuncaractèreapostrophe | 034 |
\ ? | représenteunpointd'interrogation | 063 |
\0 | Caractère nul (NUL) | 000 |
\ddd | Toutcaractèrereprésentépar1à3nombresoctaux | Trois nombres octaux |
\xhh | Toutcaractèrereprésentéparhexadécimal | Hexadécimal |
Constante de caractère
La valeur représentée par la constante de caractère dans le langage C est la valeur que le type int peut contenir.
'A','\x2f','\013' ;
où :\x signifie que le caractère suivant est un nombre hexadécimal, \ 0 signifie que le caractère suivant est un nombre octal. Par exemple, 17 indécimal est représenté par un nombre hexadécimal
'\x11',représenté par octalis'\021' ;
Les\x,\n,\aetbientôtsonttousappeléscaractèresd'échappement,quiindiquentaucompilateurqu'ilsdoiventêtretraitésd'unemanièrespéciale.
Composition
),thatis, CharacterEntity ( )isdividedintothreeparts:thefirstpartisan&symbol,calledampersandinEnglish;thesecondpartistheentity(Entity)nameor#plustheentity(Entity)number;thethirdpartisasemicolon. EscapeString( ), c'est-à-dire, CharacterEntity ( ) est divisé en trois parties : la première partie&symbole, appelée esperluette en anglais ; la deuxième partie est le nom de l'entité (Entity) ou # plus le numéro de l'entité (Entity) ; la troisième partie est un point-virgule.
Parexemple,pourafficherlemoinsquesigne(
L'avantage d'utiliser le nom d'entité est qu'il est plus facile à comprendre. Lorsque vous le regardez, vous devinez probablement la signification de moins de, mais son inconvénient est que tous les navigateurs ne prennent pas en charge le dernier nom d'entité. Le numéro d'entité peut être géré par plusieurs navigateurs.
Conseils :Le nom de l'entité est sensible à la casse.
Remarque : Le même symbole peut être cité de deux manières : " Nom d'entité " et " Numéro d'entité ".
Langage de programmation
TelsqueHTMLescapecharacter,javaescapecharacter,xmlescape,Oracleescape,sqlescape,sqlserverescape,phpescape,asp,vb,javascript,etc.ainsiquelepourcentagedesigndansl'URL.
Parexemple,HTML<>&"©estlecaractèred'évasionde&,"",©;respectivement
XML n'a que 5 caractères d'échappement :<>&"'
Une fonction
EscapeSequence (EscapeSequence) isalsocalledCharacterEntity.InHTML, thedefinitionofescapeTherearetworeasonsforstrings: Thefirstreasonisthatsymbolslike "" havebeenusedtorepresentHTMLtags, sotheycannotbeuseddirectlyassymbolsintext.InordertousethesesymbolsinHTMLdocuments, theyneedtobedefinedItsescapedstring.Whentheinterpreterencountersthistypeofstring, itwillinterpretitasarealcharacter.Whenenteringanescapedstring, strictlyfollowtherulesoflettercase.ThesecondreasonisthatsomeCharactersarenotdefinedintheASCIIcharacterset, sotheyneedtoberepresentedbyescapedstrings.
Enfait, inallprogramminglanguages, therearebasicallytworeasonsforhavingescapecharacters: 1.UseescapecharacterstorepresentThecharactersdefinedinthecharacterset, suchasthecontrolcharactersinASCllandthecharacterssuchascarriagereturnandlinefeed, havenoready-madetextcodes.Therefore, theycanonlyberepresentedbyescapecharacters.Second, certainspecificcharactersareusedintheeditinglanguageDefinedasspecial-purposecharacters.Becausethesecharactersaredefinedasspecial-purposecharacters, theylosetheiroriginalmeaning.Forexample, inHtml,
Itcanalsobeseenfromtheabovethatescapingisnothingmorethantwosituations: 1: Convertordinarycharacterstospecialpurposes, generallyusedinprogramminglanguages torepresentcharactersthatcannotbedirectlydisplayed, suchasthebackkey, enterkey, etc.2: Usedtoconvertthecharacterswithspecialmeaningbacktotheiroriginalmeaningrighteous.Generallyusedinregularexpressions.Therearealsosomescriptinglanguages thatareweaklytyped, somelanguages suchashtmlarenotprogramminglanguages, butmarkuplanguages, andsomelanguages haveonlyonetypesuchasshellscriptinglanguages.Thestringsintheselanguages arenotquoted "", ortheycanbeomittedQuotationmarks "" , il est donc parfois nécessaire d'échapper les caractères pour indiquer que l'identité d'un personnage à ce moment est un caractère ordinaire, plutôt qu'un seul caractère avec une signification particulière.
De plus,pourlasécuritédusiteweb.Avantquelesdonnéesnes'inscriventdanslabasededonnées,certainscaractèressensiblessontéchappésàl'aidedecaractères(fonctions)d'échappement.
Espaces d'exposition
Habituellement,HTMLcouperaautomatiquementlesespacessupplémentaires.Peu importelenombred'espacesajoutés,ilseratraitécommeunespace.Parexemple,sivousajoutez10espacesentredeuxmots,HTMLcoupera9espacesetn'en gardera qu'un.
URL
Endéveloppementweb,lorsquevouspassezunevaleurdanslabarred'en-têtedunavigateurparlepointd'interrogationanglais(?).
Paramètres Il y a un caractère d'échappement "&" dans le paramètre 1, qui provoquera une erreur de réception du paramètre de la page demandée.
Après encodage par java.net.URLEncoder.encode (param1) avant de passer la valeur, le caractère d'échappement peut être converti en hexadécimal ;
Représenteunespace | %2B |
Le signe plus + ou % 20 doit être utilisé à la place | %20 |
Répertoires et sous-répertoires séparés | %2F |
Séparezl'URL réelleetlesparamètres | %3F |
Spécifiez les caractères spéciaux | %25 |
signifie signet | %23 |
Cesséparateurentrelesparamètresspécifiésdansl'URL | %26 |
Lavaleurduparamètrespécifiédansl'URL | %3D |
Lavaleurduparamètrespécifiédansl'URL | %21 |