Python正規表現におけるfullmatchメソッド
メソッドfullmatchは、文字列が正規表現と完全に一致するかをチェックします。メソッドの第一引数には検索する正規表現を、第二引数には検索対象の文字列を指定します。一致が見つかればメソッドはmatchオブジェクトを返し、それ以外の場合はNoneを返します。メソッドfullmatchの構文は以下の通りです:
pythonre.fullmatch(検索パターン, 検索対象文字列)
例
メソッドfullmatchを文字列に適用してみましょう:
pythontxt = '123 456 789'
res = re.fullmatch('\d+', txt)
print(res)
コード実行後、Noneが出力されます。これは、文字列に数字だけでなく空白文字も含まれているためです:
pythonNone
例
今度は文字列が数字のみで構成されている場合を見てみましょう:
pythontxt = '123456'
res = re.fullmatch('\d+', txt)
print(res)
コードの実行結果:
python<re.Match object; span=(0, 6), match='123456'>
例
matchオブジェクトから見つかった部分文字列を取得できます。そのためには、その最初の要素にアクセスします:
pythontxt = 'abcde'
res = re.fullmatch('\w+', txt)
print(res[0])
コードの実行結果:
python'abcde'
実践問題
Задание 1
次の文字列が文字のみで構成されていることを確認してください:
pythontxt = 'abcde'
Задание 2
次の文字列が数字のみで構成されていることを確認してください:
pythontxt = '12345'