【发布时间】:2015-10-16 18:31:00
【问题描述】:
我正在寻找有关如何验证用户输入的建议。我的任务是根据用户的文本输入执行命令。我唯一担心的是可以接受的命令有很多变体。
例如这些命令都是可以接受的并且做同样的事情,“显示游戏板”
sh 板,
展板,
展示板,
秀博,
肖博,
嘘
大约有 10 个其他命令共享此类似属性,所以我想知道验证用户输入的最佳实践是什么?
我应该将所有不同的组合存储在哈希图中吗?
【问题讨论】:
-
把所有有效的组合放在一个哈希图中会很快变得笨拙,当你遇到更多有效的组合时,你还必须不断更新它。您可以通过为用户提供一组固定的命令来执行更严格的操作,或者让他选择与命令相对应的数字。 Reg ex 是另一种更可行的解决方案。
-
我完全明白你在说什么,这就是我要问的原因,我不希望它笨拙。不幸的是,我不允许限制命令。练习的目的是能够处理所有的变化。
-
我明白了。我发布了一些 reg ex sn-p 来帮助您入门。
-
OP,很好奇你最后是怎么做到的。
-
我最终使用 switch 语句来测试第一个单词,并在其中嵌套了第二个 switch 语句来测试第二个单词。
标签: java validation input hashmap