随机字符串生成器

选择长度、数量和字符集,在浏览器本地生成一个或多个随机字符串。

输入 1~4,096;数量乘以长度最多为 100,000。

输入 1~200。每条结果占一行。

字符类型
排除易混淆字符

开启后移除 0、O、1、l、I 和 |。

可留空;与已选字符类型合并并去重,不允许空格或控制字符。

可留空;这里的字符会从最终字符池中移除。

快捷示例
设置长度和字符集后点击“生成字符串”。
生成结果 等待生成

首条字符串预览

等待生成
每条长度
0
结果数量
0
字符池大小
0

全部字符串

复制和下载始终包含完整结果。

尚无字符串结果。

当前字符池

合并、去重并排除后的实际可抽样字符。

等待生成后显示字符池。

每个字符位置独立从最终字符池抽样;多条结果之间允许相同,不提供唯一性保证。

了解更多

字符池与生成方法

随机字符串如何生成

页面先合并已选择的大写字母、小写字母、数字、符号和自定义字符,再按 Unicode 码点去重,最后应用易混淆字符与自定义排除规则。

生成时,每个字符位置都通过 Web Crypto 获取随机值,并使用拒绝采样映射到最终字符池索引,避免简单取模带来的偏差。

排除易混淆字符有什么作用

开启后会从字符池移除 0、O、1、l、I 和 |,便于人工读取或抄写;这不会自动让结果成为合格密码。

自定义 Unicode 字符怎样处理

自定义字符按 Unicode 码点拆分并去重。由多个码点组成的表情、变体选择符或组合字素可能被拆开,因此复杂表情序列不适合作为自定义字符集。

限制与使用边界

字符串长度为 1~4,096,数量为 1~200,总字符数最多 100,000;自定义字符与排除字符各最多 512 个不同码点。

页面最多展开 100 条结果和 120 个字符池项目,其余数量以文字说明;复制与下载仍包含完整结果。

本工具用于测试数据、占位符、游戏代码和一般开发场景,不替代密码生成策略、密钥派生、访问令牌或正式安全审计。

工具信息与来源

生成完全在当前浏览器中进行,不上传输入,不使用第三方运行 API、CDN、在线字体或本地存储。

MDN:Crypto.getRandomValues()

W3C:Web Cryptography Level 2

RFC 4086:安全随机性要求

MDN:JavaScript String 与 Unicode 码点

常见问题

随机字符串和随机字母有什么区别?

随机字母生成器只处理 A–Z 和 a–z;本页面向通用开发场景,可组合数字、符号和自定义字符。

为什么批量结果可能重复?

每条字符串独立生成,页面不执行跨结果去重。字符池较小或字符串较短时,重复概率会更高。

可以把这里的结果直接当密码吗?

不建议。密码通常还需要满足站点规则、长度策略、唯一存储和密码管理流程;本页定位为通用随机字符串工具。