Pythonで文字列から数字を取り出す方法は?
数字を取り出す方法はいくつかあります。
- 正規表現を使用すると、文字列中の数字をマッチングするためにreモジュールのfindall関数を使用することができます。例:
import re
string = "abc123def456"
numbers = re.findall(r'\d+', string)
print(numbers) # 输出:['123', '456']
- isdigit()メソッドを使用すると、文字列の各文字を検証して数字かどうかを判断できます。例えば:
string = "abc123def456"
numbers = ''.join([char for char in string if char.isdigit()])
print(numbers) # 输出:123456
- isnumeric()メソッドを使用すると、isdigit()と同様に他の数字文字(漢字数字など)も含まれているかどうかを判断できます。例えば:
string = "abc一二三def四五六"
numbers = ''.join([char for char in string if char.isnumeric()])
print(numbers) # 输出:一二三四五六
上記の方法で取り出される数字はすべて文字列として返されます。それを整数や浮動小数点数に変換したい場合は、int()やfloat()関数を使って型変換してください。