0
0

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 5 years have passed since last update.

splitの使い方

Posted at

文字列の抽出

仕事で文字列を抽出する機会が多いが、今だに効率の悪いコードを書いてしまう。今回もその一例を紹介したい。

メールアドレスからドメインを抽出するコード

mail_address = 'aaa@example.com'
domain = mail_address.rsplit('@')[-1]
print(domain)  # example.comが表示される

実は外部ライブラリでもemailのローカルパートとドメインパートを分けるライブラリがある。しかしながら、真面目にフォーマットが正しいかどうかのチェックを度外視すると、これで十分と思われる。最初からこんなコード書ければよかったのだが、圧倒的に非効率なコードを書いてしまった。

fqdnから最後の.を取り除くコード

fqdn = 'mx.hogehoge.example.com.'
domain = fqdn.rstrip('.')
print(domain)  # mx.hogehoge.example.comが表示される

たったこれだけなのだが、自分はこうではない無駄なコードを書いてしまった。rsplitは右から文字を検証するが、該当する文字がない場合は何もしないようだ。この例でいえば、一番右端が'.'であれば削除するし、そうでなければ何もしない。

Pythonをもう少し使いこなすには

組み込み関数の使い方をもう少し学習した方がよいと感じたので、最低でも一日一個ずつくらい使い方を覚えていこうと思う。

0
0
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
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?