私は「7週間の7つの言語」の本を読んでいて、1日目のerlangの自習で小さな問題を通過することはできません。
私のコードは次のようなものです:
-module(slsw).
-export([count_words/1]).
list_length([]) -> 0;
list_length(String) ->
[_ | Tail] = String,
1 + list_length(Tail).
count_words(Text) ->
{_, R} = re:split(Text, " "),
list_length(R).
しかし、私が開いたらerl
、それをコンパイルして(c(slsw).
)、次のようなもので使用してみてください:
slsw:count_words("yoo dude, this is a test").
この厄介なランタイム例外が発生しました:
** exception error: no match of right hand side value [<<"yoo">>,<<"dude,">>,<<"this">>,<<"is">>,<<"a">>,
<<"test">>]
in function slsw:count_words/1 (slsw.erl, line 19)
配列を終了し、この例外をスローするようです。何が間違っているのでしょうか。
機能も見つけましたstring:words
が、楽しく勉強したいです。
前もって感謝します