正規表現を使用してPythonで文字列(大文字・小文字・特殊文字)、数値をカウントする
文字列(大文字・小文字・特殊文字)、数値をカウントする場合は、Pythonの標準ライブラリであるreモジュールを使用します。標準ライブラリであるため、追加でライブラリのインストールの必要はありません。
■Python
今回のPythonのバージョンは、「3.8.2」を使用しています。(Windows10)
■正規表現を使用して大文字、小文字、特殊文字、数値をカウントする
では、早速正規表現を使用して大文字、小文字、特殊文字、数値をカウントするスクリプトを書いていきます。
■コード
import re string = "This is an apple!, 12345678910" uppercase_characters = re.findall(r"[A-Z]", string) lowercase_characters = re.findall(r"[a-z]", string) numerical_characters = re.findall(r"[0-9]", string) special_characters = re.findall(r"[, .!?]", string) print("大文字は", len(uppercase_characters),"個") print("小文字は", len(lowercase_characters),"個") print("数字は", len(numerical_characters),"個") print("特殊文字は",len(special_characters),"個")
インポートでreモジュールを呼び出して、stringという変数を作成し、その中に文字列(大文字・小文字・特殊文字)、数値をカウントする文章を記述します。
記述後、uppercase_characters(大文字)、lowercase_characters(小文字)、numerical_characters(数字)、special_characters(特殊文字)という変数を作成します。その中に、re.findall()関数を記述します。括弧内には、大文字のアルファベットA-Zまでなどを指定し、文字列内のパターンと重複しない一致をすべて検索できるようにします。
最後に検索結果を、print関数で出力しますが、この時にlen()関数で記述し、検索結果の要素数のみを出力します。
■実行
今回書いたスクリプトを「count_strings.py」という名前で保存し、コマンドプロンプトから実行してみます。
実行してみると、文章内の大文字、小文字、特殊文字、数値をカウントすることができました。
コメント