1. ホーム
  2. python

AttributeError: 'NoneType' オブジェクトに属性 'group' がない 正規表現に問題がある

2022-02-21 10:36:55

正規表現によるマッチングを行った際に AttributeError: 'NoneType' object has no attribute 'group' のようなエラーが発生することがありますが、これは主に要素がマッチングされずに group() メソッドが呼び出されたことが原因です。

import re

content = 'hello world'
result = re.match('^w.*d$', content)#this is trying to extract just world
print(result)
print(result.group())

match関数は先頭からしかマッチングできず、途中からはマッチングできないので、最初のprint関数はnoneを表示します。また、戻り値が none のときに group() メソッドを再度呼び出すと AttributeError: 'NoneType' object has no attribute 'group' type error というエラーが発生します。

検索機能はブロック全体をスキャンして、それを抽出する。