ホームページ >バックエンド開発 >Python チュートリアル >Python で文字列から数値を抽出する最適な方法: `re` または `isdigital()`?

Python で文字列から数値を抽出する最適な方法: `re` または `isdigital()`?

Mary-Kate Olsen
Mary-Kate Olsenオリジナル
2024-12-29 09:17:10769ブラウズ

How to Best Extract Numbers from Strings in Python: `re` or `isdigit()`?

Python で文字列から数値を抽出する

Python で文字列から数値を抽出する場合、正規表現を使用するか isdigital( ) メソッド。

通常式

正規表現は、文字列内のパターンを照合する強力な方法を提供します。数値抽出には、次の正規表現を使用できます: d 。この式は、1 つ以上の数字のシーケンスと一致します。

正規表現を使用するために、Python には re モジュールが用意されています。次のコードは、正規表現を使用して文字列から数値を抽出する方法を示しています。

import re

line = "hello 12 hi 89"
result = re.findall(r'\d+', line)
print(result)  # Output: ['12', '89']

isdigital() メソッド

isdigital() メソッド。 Python 標準ライブラリ。文字列が数字のみで構成されている場合に True を返します。このメソッドは、文字列を反復処理して数字を抽出するために使用できます。

line = "hello 12 hi 89"
result = [char for char in line if char.isdigit()]
print(result)  # Output: ['1', '2', '8', '9']

文字のリストを整数に変換するには、リスト内包表記を使用できます。

result = [int(char) for char in line if char.isdigit()]
print(result)  # Output: [1, 2, 8, 9]

比較

正規表現と isdigital() メソッドの両方で、効率的に数値を抽出できます。文字列。ただし、正規表現を使用すると柔軟性と制御が向上し、より複雑なパターン マッチングが可能になります。一方、 isdigital() メソッドは、よりシンプルで簡単に使用できます。

結論

正規表現と isdigital() メソッドのどちらを選択するかは、依存します。タスクの特定の要件について。より単純な場合には、 isdigital() メソッドで十分かもしれません。より複雑なパターン マッチングの場合、正規表現はより堅牢で適応性のあるソリューションを提供します。

以上がPython で文字列から数値を抽出する最適な方法: `re` または `isdigital()`?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。