Re: Binary String pattern matching

Java House <[email protected]>
Newsgroups gmane.comp.lang.erlang.general
Message-ID <CAJYUOtdtknQOVfD_Yh8h8d3NaYekRwGsgBJ8Z4Tqt6c23HWwvQ@mail.gmail.com>
Hi

data format cannot change, its coming from the provider
I only the list of different currencies.
The value can be anything from 1 digit to 4
thank you

Στις Τετ, 9 Δεκ 2020 στις 7:58 μ.μ., ο/η Harenson Henao <[email protected]>
έγραψε:

> You may want to move the currency to the front of the bitstring and then
> pattern match it like: currency_to_credits({cur, <<"EUR", Amount/binary>>},
> Acc) ...
>
> On Wed, Dec 9, 2020 at 1:49 PM Java House <[email protected]> wrote:
>
>> there is a typo in the example
>> currrency_to_credits({cur, << Value , "CHF">>}, Acc)
>>   when Value >= <<"1000">>, Value =< <<"10000">> ->
>>      {chf, Acc + Value };
>> currrency_to_credits({cur, << Value , "EUR">>}, Acc)
>>   when Value >= <<"1000">>, Value =< <<"10000">> ->
>>      {eur, Acc + Value };
>> currrency_to_credits({cur, << Value , "US">>}, Acc)
>>   when Value >= <<"1000">>, Value =< <<"10000">> ->
>>      {us, Acc + Value };
>>
>> Στις Τετ, 9 Δεκ 2020 στις 7:17 μ.μ., ο/η Java House <[email protected]>
>> έγραψε:
>>
>>> Hello all
>>>
>>> I am learning Erlang and have stuck to the following problem.
>>> How to write a function with pattern matching when the parameter is a
>>> binary string.
>>>
>>> I have a list of binary strings e.g.
>>> <<3123CHF>>
>>> <<341424343EUR>>
>>> <<14143US>>
>>>
>>> I am trying to create a function that matches according to a pattern.
>>>
>>> currrency_to_credits({cur, <<A, "CHF">>}, Acc)
>>>   when Value >= <<"1000">>, Value =< <<"10000">> ->
>>>      {chf, Acc + A};
>>> currrency_to_credits({cur, <<A, "EUR">>}, Acc)
>>>   when Value >= <<"1000">>, Value =< <<"10000">> ->
>>>      {eur, Acc + A};
>>> currrency_to_credits({cur, <<A, "US">>}, Acc)
>>>   when Value >= <<"1000">>, Value =< <<"10000">> ->
>>>      {us, Acc + A};
>>>
>>> But this does not seem to be the right way.
>>> How can I create a pattern for binary string?
>>> will it work better for list string? How?
>>>
>>> Thank you
>>> Nikolas
>>>
>>
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.