LoginSignup
36
32

More than 5 years have passed since last update.

【Python】文字列から数字だけを取り出したい場合

Posted at

"2019年"→"2019"、という感じでpythonで文字列から数字を取り出したかった。
ググると下の記事が。

pythonで文字列から数字だけ取り出す
https://qiita.com/sakamossan/items/161db7418ade037f6f3d

おお、簡単。
記事を参考するとこんな感じ。

# 正規表現操作のライブラリ
import re

# re.sub(正規表現パターン, 置換後文字列, 置換したい文字列)
# \D : 10進数でない任意の文字。(全角数字等を含む)
num = re.sub("\\D", "", "2019年")
print(num)    # "2019"

re.sub()が何となく正規表現で文字列を""に置換して消しているんだろうな。
と、ふわっとした理解だったのでドキュメントを読んだメモ。

re.subの第一引数を記事では、r"\D"と書いていますが、これはraw文字列記法というらしい。
クォーテーションの前にrを書くことで、エスケープシーケンスである\を省略できるようです。
いつも"\\\\192.hogehoge\\C\\hogehoge"みたいなパスの書き方をしていたので今後はraw文字列記法とやらを使います。

pythonは現場での独学なので、どんなに短くても人のコードを読むのは非常に勉強になります。

36
32
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
36
32