隨機項目選擇器

貼上項目列表,隨機抽取一個或多個項目,並查看剩餘項目與抽取紀錄。

每行一個項目;空白列會忽略,不同列的相同文字仍視為獨立項目。

每回合最多抽取 1,000 個;無放回時不能超過目前可用項目數。

抽取方式

開啟後,已出現在紀錄中的輸入列不會參加下一回合抽取。

已載入範例列表,可以直接抽取。
本回合選中等待抽取
等待抽取

本回合全部結果

  • 完成抽取後,本回合選中的項目會顯示在這裡。
本回合抽取
0
目前可用
0
歷史回合
0

剩餘項目

  • 目前沒有剩餘項目。

抽取紀錄

  1. 完成抽取後,紀錄會顯示在這裡。

複製內容不會加入編號,每個選中項目各佔一行。

進一步了解

抽取方法與不重複規則

安全隨機抽取方法

工具先清理空白列,再為每個輸入列分配獨立識別碼。隨機索引來自瀏覽器 Web Crypto,並使用拒絕取樣避免直接取模造成偏差。

無放回模式使用部分 Fisher–Yates 洗牌,只移動抽取所需的範圍;有放回模式則每次都從目前可用池重新抽取。

無放回與排除歷史有什麼不同

無放回保證同一回合不會抽中同一輸入列兩次;排除歷史會把前幾回合出現過的輸入列從下一回合可用池移除。

重複文字如何處理

兩行即使文字完全相同,也會視為兩個獨立項目,保留輸入中的實際權重;若需要完全去重,請先清理列表。

限制、隱私與適用範圍

最多處理 1,000,000 個字元、50,000 行輸入與每回合 1,000 次抽取。歷史最多保留 100 回合,超過後會移除最早紀錄。

所有處理都在瀏覽器本機完成,不上傳列表、不使用遠端 API,也不寫入 localStorage。只有在選擇複製後才會使用剪貼簿。

適合日常選擇與娛樂,不適用於受監管抽獎或醫療、法律、財務、安全關鍵決策。

工具資訊與來源

隨機來源參考 MDN Crypto.getRandomValues 的說明;無放回方法參考 NIST 對 Fisher–Yates 洗牌的說明。不使用第三方執行期函式庫。

MDN Crypto.getRandomValues()

NIST Fisher–Yates shuffle

常見問題

有放回和無放回有什麼不同?

有放回允許同一輸入列在同一回合中被選中多次;無放回則保證同一回合每個輸入列最多出現一次。

排除歷史已選後,為什麼沒有可用項目?

歷史紀錄已涵蓋所有輸入列。清除歷史、關閉排除選項或增加項目即可繼續。

修改列表後,為什麼抽取紀錄會被清除?

修改各列後,可用項目池的身分已經改變。清除舊紀錄能避免將舊列表項目錯誤地排除在新列表之外。