Pythonの正規表現で英数字をチェックする方法をわかりやすく解説
Pythonでは、標準ライブラリのreモジュールを使うことで、文字列が英数字のみで構成されているかどうかを簡単に判定できます。正規表現の特別なシーケンス\wは、LOCALEおよびUNICODEフラグが指定されていない場合、半角英字(a〜z、A〜Z)、数字(0〜9)、そしてアンダースコア(_)にマッチします。
英数字チェックのサンプルコード
以下の例では、re.search()とパターンr'^\w+$'を組み合わせて、文字列全体が英数字だけで構成されているかを確認しています。
import re result = re.search(r'^\w+$', 'Tutorials123') print(result.group())
実行結果
Tutorials123
正規表現パターンの解説
^:文字列の先頭にマッチします\w+:英数字またはアンダースコアが1回以上連続する部分にマッチします$:文字列の末尾にマッチします
これらを組み合わせることで、文字列の先頭から末尾までがすべて英数字・アンダースコアである場合にのみマッチします。もし空白や記号などが含まれていれば、re.search()はNoneを返すため、条件分岐によるバリデーションにも活用できます。
なお、Python 3ではprintが関数として扱われるため、上記のように括弧を付けて記述する点に注意してください。
-
Pythonの正規表現で文字列が英数字のみかどうかを判定する方法
正規表現を使った英数字チェックの基本Pythonで文字列が英字と数字(アルファベット・半角数字)のみで構成されているかどうかを確認するには、標準ライブラリの re モジュールを使用します。具体的には、re.match(regex, string) を呼び出し、パターンとして "^[a-zA-Z0-9]+$" を指定します。この正規表現の意味は以下の通りです。^:文字列の先頭からマッチを開始[a-zA-Z0-9]:英大文字・小文字または数字のいずれか1文字+:直前のパターンが1回以上繰り返される$:文字列の末尾まで一致することを保証実行例>>> import
-
Pythonで文字列が英数字のみかどうかを判定する方法【isalnum()と正規表現】
Pythonでは、文字列が英数字(アルファベットと数字)のみで構成されているかどうかを簡単に判定できます。主な方法は2つあります。文字列クラスに組み込まれている isalnum() メソッドを使う方法と、正規表現を使う方法です。 isalnum()メソッドを使う方法 Pythonの文字列クラスには isalnum() というメソッドが用意されています。このメソッドを文字列に対して呼び出すと、文字列が英数字のみで構成されている場合に True を、記号などが含まれる場合には False を返します。 >>> 123abc.isalnum() True >>>