【发布时间】:2018-01-27 04:12:47
【问题描述】:
我正在遍历一个字符串列表,如果字符串的开头与提供的字符串匹配,我想返回它的内容。
例如
strings = [ "GITHUB:github.com", "STACKOVERFLOW:stackoverflow.com" ]
IO.puts fn(strings, "GITHUB") // => "github.com"
这是我目前的想法:
def get_tag_value([ << tag_name, ": ", tag_value::binary >> | rest ], tag_name), do: tag_value
def get_tag_value([ _ | rest], tag_name), do: get_tag_value(rest, tag_name)
def get_tag_value([], tag_name), do: ""
但我明白了:
** (CompileError) lib/file.ex:31: a binary field without size is only allowed at the end of a binary pattern and never allowed in binary generators
这是有道理的,但是我不太确定如何去做。如何将子字符串与作为参数提供的不同变量匹配?
【问题讨论】: