نویسه رهایی
نویسه رهایی (به انگلیسی: Escape character) در علم رایانش و مخابرات، نوعی نویسه (به انگلیسی: character) است که موقعی که در یک «توالی (رشته) نویسه» ظاهر می شود، ترجمه و تقسیر متفاوتی برای نویسههای بعد از خود ایجاد می کند. «نویسه رهایی» نوع خاصی از فرا نویسه میباشد. قضاوت در مورد اینکه نویسهای از نوع «نویسه رهایی» میباشد، بر اساس زمینه ی استفاده (context) تعیین میگردد. یک «نویسه رهایی» معنای اصلی خود را ندارد، بنابراین همه ی «ترتیبهای رهایی» شامل دو یا بیشتر نویسه میباشند .
«نویسه رهایی» بخشی از قواعد نحوی بسیاری از «زبانهای برنامه نویسی»، «فرمتهای داده»، و «پروتکلهای ارتباطی» می باشند. در یک الفبا، هدف از «نویسه رهایی» شروع ترتیب نویسه می باشد، که به آن «توالی گریز» می گویند. «توالی گریز» را باید از توالی نویسههای مشابه که بدون «نویسه رهایی» رخ می دهند، به صورت متفاوتی تفسیر و ترجمه کرد .
کاربردها
دو کاربرد برای «توالی گریز» وجود دارد:
- کاربرد اول، کدبندی یک موجودیت نحوی می باشد: مثل «دستور برای دستگاه» یا «داده های خاص». در این کاربرد این «دستور» یا «دادهها» را نمی توان به صورت مستقیم در یک الفبا نمایش داد.
- کاربرد دوم، «نقلقول نویسه» می باشد، که در آن نویسههایی را که نمی توان در زمینه ی موجود تایپ کرد را نمایش میدهد، همچنین ممکن است برای نویسه هایی به کار برود که ترجمه یا تفسیر ناخواسته ای دارند. در این کاربرد «توالی گریز» یک دونگاره می باشد، و شامل «نویسه رهایی» و یک نویسه «نقل قول» میباشد.
چند مثال از «نویسه رهایی»
مثال در فرمت داده
- در SGML و فرمتهای مشتق شده از آن مثل HTML و XML، «نویسه رهایی» نویسه ی امپرسند (&) میباشد.
- در URL و URI از «نویسه رهایی» % می باشد و از آن به عنوان نویسه نقلقول استفاده میشود، این نویسه معنای متفاوتی برای نویسه های غیر ASCII ایجاد می کند.
مثال در زبان برنامه نویسی
در زبان جاوا اسکریپت از بکاسلش به عنوان «نویسه رهایی» به مقاصد زیر استفاده می شود:
\' single quote
\" double quote
\\ backslash
\n new line
\r carriage return
\t tab
\b backspace
\f form feed
\v vertical tab (Internet Explorer 9 and older treats '\v as 'v instead of a vertical tab ('\x0B). If cross-browser compatibility is a concern, use \x0B instead of \v.)
\0 null character (U+0000 NULL) (only if the next character is not a decimal digit; else it is an octal escape sequence)
\xFF character represented by the hexadecimal byte "FF"
مثال در پروتکل های ارتباطی
در یک پروتکل نقطه به نقطه از عدد 0x7D که با (\175 یا
ASCII: }
) هم نمایش داده می شود به عنوان «نویسه رهایی» استفاده میشود.
مثال در خط فرمان
در خط فرمان ویندوز نویسه ی (^) به عنوان «نویسه رهایی» استفاده می شود. یعنی برای نوشتن <hello world> باید دستور زیر را وارد کرد:
echo ^<hello world^>