8
5

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

Elixirで言語処理100本ノックやってみた!

8
Posted at

こんにちは!
ElixirSchool教育事業部、事業責任者のこーへーです。

私は、30代になってから今までの仕事を捨て去り、「将来稼げるスキルが欲しい」、「もっと自分の市場価値を上げた」と闘志を燃やしながらプログラミングえ選び、奇跡的にElixirに出会いました。

当時を振り返ると、無知だったことが幸いしましたが、もしオブジェクト指向から学んでいたなら挫折していたことでしょう。

Elixirよ私の元に、舞い降りてきてくれて誠にありがとう。

ということで、今からプログラミングを始める人は絶対Elixirをやった方が良いので(日本での案件もどんどん増えてるし、そもそも海外でめっちゃ人気の言語だから今後案件増えないはずない。)こんな脳筋の私でもできたElixirでプログラミングをしている様子をお届けましょう。

100本ノックの記事はこちら

言語処理100本ノックの記事を上から順にやっていく

01. 「パタトクカシーー」という文字列の1,3,5,7文字目を取り出して連結した文字列を得よ

まずは、text変数に文字列「パタトクカシー」を束縛(代入じゃないですよ)

iex> text = "パタトクカシーー"
"パタトクカシーー"

String.codepoints関数を使って、各文字列を分割

iex> text_list = String.codepoints(text)  
["パ", "タ", "ト", "ク", "カ", "シ", "ー", "ー"]

Enum.take_every関数を使って、「パ・ト・カ・ー」を抽出

iex> text_extraction = Enum.take_every(text_list, 2)
["パ", "ト", "カ", "ー"]

Enum.join関数を使って、それぞれの文字を結合

iex> text_extraction = Enum.join(text_extraction) 
"パトカー"

|> (パイプ)で、それぞれの処理をつなげることで、一発でパトカーとすることが出来ました。

iex> "パタトクカシーー" |> String.codepoints |> Enum.take_every(2) |> Enum.join                       
"パトカー"
8
5
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
8
5

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?