有了这种表示法之后,JavaScript 共有 6 种方法可以表示一个字符。
'\z' === 'z' // true
'\172' === 'z' // true
'\x7A' === 'z' // true
'\u007A' === 'z' // true
'\u{7A}' === 'z' // true
Java
Shell 中呢?
ps: js里", '是一样的,其实我更希望是
"\z\z" === "zz" // true
重新描述问题: 在一个字符串中表示一个字符的多种方式,比js "z\172\x7A"
,shell echo -e "z\172\x7A"
1
lxk11153 OP echo -e "\x7A"
|
2
lxk11153 OP echo -e "\172"
|
3
ChanKc 2020-08-22 14:45:14 +08:00 via Android
Java 可以进行 byte 层面的操作啊,还支持很多种编码格式。
|
5
passerbytiny 2020-08-22 15:58:27 +08:00 via Android
Literal 的表示方式,只有 "z" 是字符串 z,'z' 都不行(那是 char 类型的 z )。
|
6
passerbytiny 2020-08-22 16:12:04 +08:00 via Android 1
如果用编程的方式来获取,那真得是很多,比如 String.valueOf(new char[] {122, 0172, 0x7A})等价与 "zzz" 。
|
7
lxk11153 OP 补充 #2 https://www.gnu.org/software/coreutils/manual/html_node/echo-invocation.html
‘\0nnn’ the eight-bit value that is the octal number nnn (zero to three octal digits), if nnn is a nine-bit value, the ninth bit is ignored ‘\nnn’ the eight-bit value that is the octal number nnn (one to three octal digits), if nnn is a nine-bit value, the ninth bit is ignored ‘\xhh’ the eight-bit value that is the hexadecimal number hh (one or two hexadecimal digits) |
8
lxk11153 OP Java: https://www.runoob.com/java/java-basic-datatypes.html
\ddd 八进制字符 (ddd) \uXXXX 16 进制 Unicode 字符 (xxxx) |