ホームページ >バックエンド開発 >Python チュートリアル >文字列内の数値の存在を検出するにはどうすればよいですか?

文字列内の数値の存在を検出するにはどうすればよいですか?

Barbara Streisand
Barbara Streisandオリジナル
2024-11-30 06:11:19662ブラウズ

How Can I Detect the Presence of Numbers Within a String?

文字列内の数字の識別

プログラミングの問題の多くは、数値文字列内の文字の検出に焦点を当てています。ただし、このクエリは、数値を持たないことを意図した文字列内の数値を識別するソリューションを求めます。目的は、「犬を 1 匹飼っています。」などの数字を含む文字列を受け入れないようにすることです。

この目的で一般的に使用される isdigital() 関数は、文字列内のすべての文字が数字である場合にのみ True を返します。代わりに、文字列内の数字の存在をチェックするメソッドが必要です。

文字列反復を使用した解決策

1 つのアプローチには、入力内の各文字を反復処理することが含まれます。文字列であり、それが数値であるかどうかを確認します。これは、any() 関数と isdigital() メソッドを使用して実現できます。

def has_numbers(inputString):
    return any(char.isdigit() for char in inputString)

例:

has_numbers("I own 1 dog")  # True
has_numbers("I own no dog")  # False

通常のソリューションを使用した場合式

正規表現を使用すると、より簡潔なソリューションを実装できます。次のコード スニペットでは、re.search() 関数を使用して文字列内の任意の数字を検索します。

import re

def has_numbers(inputString):
    return bool(re.search(r"\d", inputString))

例:

has_numbers("I own 1 dog")  # True
has_numbers("I own no dog")  # False

両方のソリューションが効果的文字列に数字が含まれているかどうかを判断し、数字を持たないという本来の目的に反する文字列を拒否できるようにします。

以上が文字列内の数値の存在を検出するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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