空白字符:ASCII与Unicode全解析
·
1. 标准ASCII空白字符
| 字符 | Unicode | UTF-8编码 | 名称 | HTML实体 | 描述 |
|---|---|---|---|---|---|
| 空格 | U+0020 | 0x20 | 空格(Space) |   | 最常见的空格字符 |
| \t | U+0009 | 0x09 | 水平制表符(Tab) | 	 | 制表符,通常等于4或8个空格 |
| \n | U+000A | 0x0A | 换行符(Line Feed) | | 新行(UNIX系统) |
| \r | U+000D | 0x0D | 回车符(Carriage Return) | | 回车(Mac旧版) |
| \v | U+000B | 0x0B | 垂直制表符(Vertical Tab) |  | 垂直对齐 |
| \f | U+000C | 0x0C | 换页符(Form Feed) |  | 分页符 |
2. 特殊Unicode空白字符
| 名称 | Unicode | UTF-8编码 | HTML实体 | 描述 |
|---|---|---|---|---|
| 非断空格(Non-breaking Space) | U+00A0 | 0xC2 0xA0 | | 防止在此处换行 |
| 半身空距 | U+2000 | 0xE2 0x80 0x80 |   | 西文排版用 |
| 全身空距 | U+2001 | 0xE2 0x80 0x81 |   | 西文排版用 |
| 半角空格 | U+2002 | 0xE2 0x80 0x82 |   | 等于半角字母宽度 |
| 全角空格 | U+2003 | 0xE2 0x80 0x83 |   | 等于全角字符宽度 |
| 三分之一空格 | U+2004 | 0xE2 0x80 0x84 |   | 1/3全角宽度 |
| 四分之一空格 | U+2005 | 0xE2 0x80 0x85 |   | 1/4全角宽度 |
| 六分之一空格 | U+2006 | 0xE2 0x80 0x86 |   | 1/6全角宽度 |
| 数字空格 | U+2007 | 0xE2 0x80 0x87 |   | 等于数字宽度 |
| 标点空格 | U+2008 | 0xE2 0x80 0x88 |   | 等于标点宽度 |
| 细空格 | U+2009 | 0xE2 0x80 0x89 |   | 比普通空格窄 |
| 极细空格 | U+200A | 0xE2 0x80 0x8A |   | 最窄的空格 |
| 表意空格 | U+3000 | 0xE3 0x80 0x80 |   | 中文全角空格 |
3. 零宽度字符
| 名称 | Unicode | UTF-8编码 | HTML实体 | 描述 |
|---|---|---|---|---|
| 零宽度空格 | U+200B | 0xE2 0x80 0x8B | ​ | 不可见,用于断行 |
| 零宽度非连接符 | U+200C | 0xE2 0x80 0x8C | ‌ | 防止字符连接 |
| 零宽度连接符 | U+200D | 0xE2 0x80 0x8D | ‍ | 强制字符连接 |
| 零宽度非断空格 | U+FEFF | 0xEF 0xBB 0xBF |  | BOM标记 |
UTF-8编码模式
UTF-8使用可变长度编码,不同范围的Unicode字符使用不同长度的字节序列:
| Unicode范围 | UTF-8字节序列 | 字节数 | 示例 |
|---|---|---|---|
| U+0000 - U+007F | 0xxxxxxx | 1字节 | 普通ASCII字符(包括标准空白字符) |
| U+0080 - U+07FF | 110xxxxx 10xxxxxx | 2字节 | 拉丁字母扩展、希腊字母、希伯来字母等(包括非断空格U+00A0) |
| U+0800 - U+FFFF | 1110xxxx 10xxxxxx 10xxxxxx | 3字节 | 大部分常用汉字、日文、韩文(包括大多数特殊空白字符) |
| U+10000 - U+10FFFF | 11110xxx 10xxxxxx 10xxxxxx 10xxxxxx | 4字节 | 补充平面字符、emoji等 |
UTF-8 BOM(字节顺序标记)
UTF-8 BOM (Byte Order Mark)是一个特殊的零宽度字符,用于标识文件使用UTF-8编码:
| 名称 | Unicode | UTF-8编码 | 描述 |
|---|---|---|---|
| BOM | U+FEFF | 0xEF 0xBB 0xBF | UTF-8字节顺序标记,在文件开头标识编码 |
注意:UTF-8 BOM在某些情况下可能导致问题,特别是在脚本文件中。在Web开发中,通常建议不使用BOM。
更多推荐


所有评论(0)