文字列から数字のみを取得する方法


  1. 正規表現を使用する方法: 正規表現は、特定のパターンに一致する文字列を検索するための強力なツールです。以下は、正規表現を使用して文字列から数字のみを取得する方法の例です。
import re
def extract_numbers(text):
    numbers = re.findall(r'\d+', text)
    return numbers
text = "abc 123 def 456"
numbers = extract_numbers(text)
print(numbers)  # ['123', '456']

上記の例では、re.findall(r'\d+', text)を使用して、文字列から連続する数字のグループを抽出しています。

  1. ループと組み込み関数を使用する方法: 次に、文字列をループ処理して、文字が数字であるかどうかをチェックし、数字のみを別のリストに追加する方法を示します。
def extract_numbers(text):
    numbers = []
    current_number = ""

    for char in text:
        if char.isdigit():
            current_number += char
        elif current_number:
            numbers.append(current_number)
            current_number = ""

    if current_number:
        numbers.append(current_number)

    return numbers
text = "abc 123 def 456"
numbers = extract_numbers(text)
print(numbers)  # ['123', '456']

上記の例では、isdigit()関数を使用して文字が数字であるかどうかを確認し、数字のみをnumbersリストに追加しています。

これらの方法を使用すると、文字列から数字のみを取得することができます。適用したい特定の言語やフレームワークに応じて、適切な方法を選択してください。