# Binary String pattern matching

Java House java4dev@REDACTED
Wed Dec 9 19:28:45 CET 2020

```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 <java4dev@REDACTED>
έγραψε:

> 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
>
-------------- next part --------------
An HTML attachment was scrubbed...