skylord

skylord

Converting to ASCII

Hello,

I haven’t been able to find documentation on converting characters/a string’s characters to ascii. I found that the ? mark works in the iex terminal, but not in code.

I tried this with no luck:

def words_to_marks(s) do
    s
    |> String.graphemes()
    |> Enum.map(fn x -> ?x end)
  end```

Any help would be very appreciated. Thank you.

Marked As Solved

kokolegorille

kokolegorille

Hello and welcome,

There is a simple solution… to_charlist()

?a works, but ?“a” will not, so ?x will not work.

iex> "Hello" |> to_charlist() |> IO.inspect(charlists: :as_lists)
[72, 101, 108, 108, 111]
iex> "你好" |> to_charlist() |> IO.inspect(charlists: :as_lists) 
[20320, 22909]

charlist are list of codepoints

Also Liked

ericgray

ericgray

Erlang :binary.first() will convert to ascii

def to_ascii(string) when is_binary(string) do
  :binary.first(string)
end
NobbZ

NobbZ

? does not give you anything ASCII related, it is a different form to write an integer, and it works in iex and in code, but it does not work with variables. The compiler sees ?x and sees it as the integer representing the unicode code point of Latin Small Letter X, which is 120. Coincidentally this is indeed the same as the ASCII-code for the lower case x.

Also the ways shown here won’t work for any codepoint greater than 127, as those get encoded differently in the binary, anyway, ASCII has only 7 bit and therefore no ASCII code beyond 127 exists, but you should be aware of that.

Where Next?

Popular in Questions Top

siddhant3030
Hi, I have to write a raw query for one of my project. But till now I have used ecto queries and don’t have much experience writing raw ...
New
lessless
I believe there are people here who are dealing with CSV files import on the daily basis, and since Excel is a really popular tool there ...
New
johnnyicon
Hi all, I’ve just started learning Elixir and Phoenix Framework, so please pardon my n00bness at this stage. I’m trying to use Postgres...
New
fireproofsocks
Forgive me if this is obvious, but how does one delete a database record WITHOUT selecting it first? Ecto.Repo — Ecto v3.14.0 has exampl...
New
earth10
Hi, I’m just starting to build a side-project with Elixir and Phoenix and doing some basic test with Elixir alone. What strikes me is th...
New
vrod
I am using the Starship cross-shell prompt – it seems pretty nice, but I get some errors: [WARN] - (starship::utils): Executing command ...
New
jason.o
In the code below, if the create action is not set to accept “extra_key” as an input, it errors out with a message shown above. Is there ...
New
dotdotdotPaul
Okay, I’m having a heck of a time trying to figure out how to best handle the validation of belongs_to associations in Ecto. I’m sure I’...
New
marick
I had some trouble figuring out how to make many-to-many associations work. Once I got it working, I wrote a blog post. Because I’m a nov...
New
hariharasudhan94
Lets say I have map like this fetching from my database %{"_id" => #BSON.ObjectId<58eb1a7a9ad169198c3dXXXX>, "email" => ...
New

Other popular topics Top

New
senggen
Erlang/OTP 25 [erts-13.2.2] [source] [64-bit] [smp:8:8] [ds:8:8:10] [async-threads:1] 15:22:35.803 [error] gen_event {lager_file_backend...
New
AstonJ
Posting this to see if we can make things easier for people to get into Neovim. If you use Neovim and have a favourite distro please let ...
New
jononomo
I am trying to figure out how Mix knows whether the environment is test, dev, or prod – where is this set? Thanks.
New
chrismccord
This release brings a number of exciting features, including integration with the new Phoenix LiveDashboard and Phoenix LiveView. There h...
New
freewebwithme
Using vs code and installed ElixirLS: support and debugger. And I got an error popped up on start up says Failed to run ‘elixir’ comma...
New
saif
Hello everyone, Long time lurker first time poster here. I’ve recently begun working on Elixir full-time again! :raised_hands: It’s been...
New
rms.mrcs
Hi, I need to transform a list of numbers into a map where the keys are the indexes and the values are the original values of the list. ...
New
Qqwy
Update: How to use the Blogs & Podcasts section You can post links to your blog posts or podcasts either in one of the Official Blog...
3271 126479 1222
New
sergio
Kind of like when jquery came out, it was super necessary. Existing drag and drop libraries have a bunch of baggage to support old browse...
New

We're in Beta

About us Mission Statement