咖啡
茶
果汁
牛奶
苏打水
矿泉水
本次选中等待抽取
随机项目选择器工具
粘贴项目列表,随机抽取一个或多个选项,并查看剩余项目和抽取历史。
等待抽取
本次全部结果
- 完成抽取后,本次选中的项目会显示在这里。
- 本次抽取
- 0
- 当前可用
- 0
- 历史轮次
- 0
剩余项目
- 当前没有剩余项目。
抽取历史
- 完成抽取后,历史记录会显示在这里。
复制内容不添加编号,每个选中项目占一行。
了解更多
抽取方法与不重复规则
安全随机抽取方法
工具先清理空行,再为每个输入行分配独立标识。随机索引来自浏览器 Web Crypto,并使用拒绝采样避免直接取模造成偏差。
无放回模式使用部分 Fisher–Yates 洗牌,只移动抽取所需范围;有放回模式每次都从当前可用池重新抽取。
无放回和跨轮次排除有什么区别
无放回保证同一轮不会抽中同一输入行两次;跨轮次排除会把历史中出现过的输入行从下一轮可用池移除。
重复文字如何识别
两行即使文字完全相同,也会被视为两个独立项目。这样可以保留用户输入中的实际权重;需要完全去重时,请先清理列表。
限制、隐私与适用边界
最多处理 1,000,000 个字符、50,000 个输入行和单轮 1,000 次抽取。历史最多保留 100 轮,超过后自动移除最早记录。
所有处理都在浏览器本地完成,不上传列表,不使用远程 API,也不写入 localStorage。复制只在用户点击后发生。
本工具适合日常娱乐和一般选择,不用于受监管抽奖、医疗、法律、财务或安全关键决策。
工具信息与来源
随机源参考 MDN Crypto.getRandomValues;无放回抽取方法参考 NIST 对 Fisher–Yates 洗牌的说明。未使用第三方运行库。
常见问题
有放回和无放回有什么区别?
有放回允许同一输入行在一轮中被多次选中;无放回保证同一轮中每个输入行最多出现一次。
为什么开启排除历史后没有可用项目?
历史中已经覆盖全部输入行。清空历史、关闭排除选项或增加新项目即可继续。
修改列表后为什么历史会清空?
输入行的身份和可用池已经变化,清空旧历史可以避免把旧项目错误地排除在新列表之外。