Re: Binary String pattern matching
"kuna.prime" <[email protected]>
| Newsgroups | gmane.comp.lang.erlang.general |
|---|---|
| Message-ID | <6mds1y4YX25hW5Ro8fXf6NIYonowYPc21yAb6hV8dRAPzXaPmswN557GVvVUfHuojzqxLj-bNE9pVXYbcTNYPcTv33HmY8irmPGUFfBjoQo=@protonmail.com> |
HI, first of all binary string is of form <<"3123CHF">> and not <<3123CHF>> i'm just stating it in case there was a mistake in the first mail to answer your questio in order to pattern match you need to know the size of field you are matching so <<X:4/binary, "CHF">> = <<"3123CHF">>. will match fist 4 bytes and interpret that as new binary (X). Sent with [ProtonMail](https://protonmail.com) Secure Email. ‐‐‐‐‐‐‐ Original Message ‐‐‐‐‐‐‐ On Wednesday, December 9, 2020 7:28 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