企评社

全角半角转换

全角字母数字与半角互转 · 中英文标点分开控制 · 多行实时转换

全部在浏览器本地处理,文本不上传、刷新即清空

切换方向后按下面勾选的类别重新转换;输入框内容不会被自动改写。

转换类别(不勾的类别原样保留)

输入文本

转换结果(实时)

映射规则(逐字符判断,只改命中的字符)

类别 半角 全角 规则
数字 0-9(U+0030–U+0039) 0-9(U+FF10–U+FF19) 码点 ± 0xFEE0
字母 A-Z a-z A-Z a-z 码点 ± 0xFEE0
ASCII 标点 ! " # $ % … ~(U+0021–U+007E) ! " # $ % … ~(U+FF01–U+FF5E) 码点 ± 0xFEE0
空格 U+0020 U+3000 单独映射
中文标点 , . ; : ! ? ( ) [ ] < > ~ ,。;:!?()【】《》~ 单独表,优先于上面两行
原样保留
汉字、日文假名、emoji、其它 Unicode 符号;换行(\n / \r\n)、制表符、不换行空格(U+00A0);半角片假名(アイウ)与全角片假名(アイウ)不在范围内,不做转换。
已知取舍
中文标点转英文是「多对一」: 都变 ,< 同理;反向只按主对应还原。引号只做字符替换、不做开合配对(半角转中文时引号保持不动)。

常见问题

全角转半角是按什么规则映射的?

主要是一条固定码点差:ASCII 可见区 `!`(U+0021) 到 `~`(U+007E) 与全角 `!`(U+FF01) 到 `~`(U+FF5E) 一一对应,半角码点加 0xFEE0 得到全角、全角码点减 0xFEE0 得到半角;空格单独处理,全角空格 U+3000 对应半角空格 U+0020。另外还有一张常用中文标点表(`。、;:!?()【】《》〈〉「」『』“”‘’~`),用来覆盖不在上面区间里的字符,「中文标点」开关控制它是否生效。

会误改汉字、日文假名或 emoji 吗?

不会。工具逐字符判断码点是否命中上述区间或标点表,只有命中才替换;汉字、日文假名、emoji、其它 Unicode 符号,以及换行、制表符、不换行空格(U+00A0)都原样输出。半角片假名(アイウ)与全角片假名(アイウ)不在处理范围内——它们属于日文的半角/全角片假名对照,不是 ASCII 字符的全角形式,本工具不做这层转换。

标点转换会丢信息吗?引号会配对吗?

中文标点转英文是「多对一」的:`、` 与 `,` 都对应半角 `,`,`〈` 与 `<`、`「」『』` 与 `"` 同理,所以转成半角再转回来只能按主对应关系还原(`,` 回到 `,`),`、` 会变成 `,`——这是字符级替换的固有取舍,工具不做上下文判断。引号同样只做字符替换、不做开合配对:中文引号转半角统一变成 `"` 或 `'`,而半角转中文时引号保持不动(避免把 `"` 全部输出成左引号或猜错配对)。

会上传文本吗?能处理多长的文本?

不会。转换在你的浏览器本地完成,不发起任何网络请求,刷新即清空。单次最多 50 万字符(超出会提示分段处理);转换是逐字符一遍扫描,20 万字符量级通常几十毫秒完成,多行中英混排也支持。注意工具只改上面列出的字符类别,不会顺手去掉行首尾空白或多余换行。

相关工具