全角半角与大小写转换
一键完成全角字符与半角字符互转(依据 U+FF01—U+FF5E 与 U+3000 的码位映射)、英文转大写或小写、清理多余空格与空行,输出转换前后差异的逐字符对照,适合处理输入法误切换造成的全角数字与字母。
数据来源:Unicode 兼容半角形与全角形区段映射(U+FF01—U+FF5E ↔ U+0021—U+007E,U+3000 ↔ U+0020)
逐字符对照(最多列出前 200 处变化)
| 位置 | 原字符 | 原码点 | 转换后 | 新码点 |
|---|---|---|---|---|
| 4 | : | U+FF1A | : | U+003A |
| 5 | A | U+FF21 | A | U+0041 |
| 6 | B | U+FF22 | B | U+0042 |
| 7 | C | U+FF23 | C | U+0043 |
| 8 | 1 | U+FF11 | 1 | U+0031 |
| 9 | 2 | U+FF12 | 2 | U+0032 |
| 10 | 3 | U+FF13 | 3 | U+0033 |
| 11 | 4 | U+FF14 | 4 | U+0034 |
| 12 | 5 | U+FF15 | 5 | U+0035 |
| 13 | 6 | U+FF16 | 6 | U+0036 |
| 14 | U+3000 | U+0020 | ||
| 17 | : | U+FF1A | : | U+003A |
| 18 | 1 | U+FF11 | 1 | U+0031 |
| 19 | , | U+FF0C | , | U+002C |
| 20 | 0 | U+FF10 | 0 | U+0030 |
| 21 | 0 | U+FF10 | 0 | U+0030 |
| 22 | 0 | U+FF10 | 0 | U+0030 |
| 23 | . | U+FF0E | . | U+002E |
| 24 | 0 | U+FF10 | 0 | U+0030 |
| 25 | 0 | U+FF10 | 0 | U+0030 |
| 41 | ( | U+FF08 | ( | U+0028 |
| 46 | ) | U+FF09 | ) | U+0029 |
订单号:ABC123456 金额:1,000.00 元 Status: OK (三行示例)
全角转半角的规则是码位减 0xFEE0(U+FF01—U+FF5E 对应 U+0021—U+007E),全角空格 U+3000 转成普通空格;中文汉字与中文标点(,。!?)没有半角对应形式,保持不变。
本页所有计算在浏览器内完成,输入内容不会被上传。
计算口径
全角与半角在 Unicode 中是两组独立码位:半角 ASCII 可见字符为 U+0021—U+007E,全角形为 U+FF01—U+FF5E,两者相差 0xFEE0;全角空格 U+3000 与半角空格 U+0020 单独映射。汉字本身没有全半角之分(每个占一个全角宽度),中文标点也不在该映射内,因此不会被转换。大写与小写转换在 ASCII 上偏移 32,同时兼顾全角字母区段 U+FF21—U+FF5A。
使用说明
- 单号、金额里混入全角数字导致校验失败时选"全角 → 半角"再入库
- 需要对齐的表格文本(如与中文等宽)选"半角 → 全角"
- 从 PDF 复制出来的文本常有断行与多余空格,用"清除多余空白"整理
常见问题
全角数字和半角数字有什么实际区别?
显示宽度不同(全角占两个半角位),码位也不同,所以字符串比较、正则 d、金额校验都会失败。数据库唯一索引里 123 与 123 会被当成两个不同值,是常见的重复数据来源。
为什么中文逗号没被转成英文逗号?
U+FF0C(,)不在 ASCII 的对应区间,Unicode 没有为它定义半角形式。本工具遵循标准映射不做近似替换,避免把正文标点改错。
清除多余空白会删掉换行吗?
不会删除有效换行,只把连续多个空行压成一个空行、去掉行首行尾空白与行内重复空格,末尾空行会被去掉。段落结构保留。