อักขระ Escape ทั้งหมดคืออะไร?


118

ฉันรู้จักอักขระ Escape บางตัวใน Java เช่น

\n : Newline
\r : Carriage return
\t : Tab
\\ : Backslash
...

มีรายการทั้งหมดหรือไม่?


11
นี่คือข้อมูลจำเพาะภาษา Java
skaffman

2
อย่าถามคำถามบนอินเทอร์เน็ตเกี่ยวกับสิ่งต่างๆที่คุณสามารถทำได้อย่างง่ายดายหรือง่ายกว่าค้นหาตัวเอง คุณเสี่ยงต่อการเกิดข้อผิดพลาดร้ายแรง
Marquis of Lorne

คำตอบ:


184

คุณสามารถค้นหารายการเต็มรูปแบบที่นี่

  • \t แทรกแท็บในข้อความที่จุดนี้
  • \b แทรก backspace ในข้อความ ณ จุดนี้
  • \n แทรกขึ้นบรรทัดใหม่ในข้อความ ณ จุดนี้
  • \r ใส่แคร่กลับในข้อความ ณ จุดนี้
  • \f แทรก formfeed ในข้อความ ณ จุดนี้
  • \' แทรกอักขระเครื่องหมายคำพูดเดี่ยวในข้อความ ณ จุดนี้
  • \" ใส่เครื่องหมายอัญประกาศคู่ในข้อความ ณ จุดนี้
  • \\ แทรกอักขระแบ็กสแลชในข้อความ ณ จุดนี้

29
รายการไม่มี Unicode และค่า Escape แบบฐานแปด: \ u1234 \ 012 \ 01 \ 0
Sampo


นอกจากนี้ยังไม่มีอักขระระฆัง\aและอักขระ\0ว่าง
bvdb

9
\aไม่ได้รวบรวมใน javac 1.8.0_20:illegal escape character: String test = "\a";
Ehryk

3
"Unicode Escape จะถูกประมวลผลล่วงหน้าก่อนที่คอมไพลเลอร์จะรัน" - มาร์คปีเตอร์ส ดังนั้นพวกเขาจึงแตกต่างจากค่า Escape String มาตรฐานที่แสดงที่นี่ ขอขอบคุณ Jan สำหรับความคิดเห็นสำหรับคำตอบนี้
Josiah Yoder

43
Java Escape Sequences:

\u{0000-FFFF}  /* Unicode [Basic Multilingual Plane only, see below] hex value 
                  does not handle unicode values higher than 0xFFFF (65535),
                  the high surrogate has to be separate: \uD852\uDF62
                  Four hex characters only (no variable width) */
\b             /* \u0008: backspace (BS) */
\t             /* \u0009: horizontal tab (HT) */
\n             /* \u000a: linefeed (LF) */
\f             /* \u000c: form feed (FF) */
\r             /* \u000d: carriage return (CR) */
\"             /* \u0022: double quote (") */
\'             /* \u0027: single quote (') */
\\             /* \u005c: backslash (\) */
\{0-377}       /* \u0000 to \u00ff: from octal value 
                  1 to 3 octal digits (variable width) */

สื่อสารได้หลายภาษาเครื่องบินพื้นฐานเป็นค่า Unicode จาก 0x0000 - 0xFFFF (0-65535) เครื่องบินเพิ่มเติมสามารถระบุได้เฉพาะใน Java โดยใช้อักขระหลายตัว: heiroglyph A054 ของอียิปต์ (การวางเพื่อน) คือU+1303F/ 𓀿และจะต้องแยกย่อยเป็น"\uD80C\uDC3F"(UTF-16) สำหรับสตริง Java บางภาษาอื่น ๆ "\U0001303F"รองรับเครื่องบินที่สูงขึ้นด้วย


คำตอบที่มีอยู่ไม่ได้ระบุลำดับยูนิโคดและลำดับเลขฐานแปดใน Java
Ehryk

2
\u000aดูเหมือนจะใช้ไม่ได้ -> - invalid character constant ดูเพิ่มเติมที่นี่
ม.ค.

6
@ มันทำงานบางทีก็ดีเกินไป ไม่เหมือนกับตัวอย่างเช่น\rและ\nUnicode Escape จะถูกประมวลผลล่วงหน้าก่อนที่คอมไพลเลอร์จะรันเป็นคำถามที่คุณเชื่อมโยงเพื่อระบุ ด้วยเหตุนี้จึงเป็นการแทรกฟีดบรรทัดตามตัวอักษรลงในโค้ดของคุณและล้มเหลวเนื่องจากมัน อย่างไรก็ตามรหัสหลบหนีนั้น "ทำงาน" ตามที่ตั้งใจไว้เพื่อทำงานในข้อกำหนด
Ehryk

0

ใช่ด้านล่างนี้เป็นลิงค์ของ docs Oracle ที่คุณสามารถค้นหารายการอักขระ Escape ทั้งหมดใน Java

อักขระ Escape จะนำหน้าด้วย "\" เสมอและใช้เพื่อทำงานบางอย่างเช่นไปที่บรรทัดถัดไปเป็นต้น

สำหรับรายละเอียดเพิ่มเติมเกี่ยวกับ Escape Character อ้างอิงลิงค์ต่อไปนี้:

https://docs.oracle.com/javase/tutorial/java/data/characters.html


0

นี่คืออักขระ Escape ที่ใช้ในการจัดการสตริง

\t  Insert a tab in the text at this point.
\b  Insert a backspace in the text at this point.
\n  Insert a newline in the text at this point.
\r  Insert a carriage return in the text at this point.
\f  Insert a form feed in the text at this point.
\'  Insert a single quote character in the text at this point.
\"  Insert a double quote character in the text at this point.
\\  Insert a backslash character in the text at this point.

อ่านเพิ่มเติมเกี่ยวกับพวกเขาได้จากที่นี่

http://docs.oracle.com/javase/tutorial/java/data/characters.html

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.