的bson-erlang
module變成BSON編碼的JSON像這樣的:模式匹配上BSON元組
{ "salutation" : "hello",
"subject" : "world" }
到二郎元組是這樣的:
{ salutation, <<"hello">>, subject, <<"world">> }
現在,服務器我試圖說話可以把這些字段以任何順序排列,並且可能有額外的字段在那裏,我不在乎,所以 - 同樣有效 - 我可能會看到這個:
{ subject, <<"world">>, salutation, <<"hello">>, reason, <<"nice day">> }
有沒有什麼辦法可以指定一個函數模式,根據緊挨着它出現的那個提取特定的元組塊?
如果我嘗試以下時,出現「無功能的語句匹配......」因爲元組的元數是錯誤的,因爲我關心的領域是不是在正確的位置:
handle({ salutation, Salutation, _, _ }) -> ok.
這可能嗎?有一個更好的方法嗎?
我已經可以用'bson:at'做到了,儘管這很有用,謝謝。我想知道我是否可以用模式做到這一點? –
我認爲如果你事先不知道它的長度,並且不想將它轉換成其他類型的列表,就不可能匹配tupple的內部元素。 – Pascal