2
这下面的行给我什么用户在命令被写提示Erlang如何检查命令行的第一个值?
Y= io:get_line("Send message --> ").
我的问题是,我想写一个如果检查条件,如果用户输入“#$”的线作为第一个参数然后它应该显示一些错误信息。
任何建议或意见将不胜感激。提前致谢 !!
这下面的行给我什么用户在命令被写提示Erlang如何检查命令行的第一个值?
Y= io:get_line("Send message --> ").
我的问题是,我想写一个如果检查条件,如果用户输入“#$”的线作为第一个参数然后它应该显示一些错误信息。
任何建议或意见将不胜感激。提前致谢 !!
首先,你可能要拆你的论点:
Line = io:get_line("Send message --> "),
Args = string:tokens(Line, [$\s, $\t, $\n]).
现在你有一个字符串参数列表,让我们使用模式匹配:
case Args of
["#$" | _TailArgs] ->
error("some error message");
Args ->
do_something_with(Args)
end
一个简单的解决方案:
case io:get_line("Send message --> ") of
"#$" ++ _Rest ->
error(something_wrong);
Args ->
work_with(Args)
end.