Pythonのfinditerメソッドにおけるキャプチャグループ
finditerメソッドでも
キャプチャグループを使用することができます。
実際に見てみましょう。以下の文字列があるとします:
txt = 'aaaa 123 bbbb 456'
文字列内にある全ての数字を キャプチャグループに格納してみましょう。 そして、オブジェクトをループで反復処理しながら、 最初のマッチ(これは0番目のキャプチャグループとみなされます)と、 それ自体もキャプチャグループに分けられたその要素を 出力します:
res = re.finditer('(\d)(\d)', txt)
for el in res:
print(el[0], el[1], el[2])
コードを実行すると、0番目のキャプチャグループ、 つまり部分文字列全体と、その部分文字列の 最初と2番目の文字が出力されます:
'12 1 2'
'45 4 5'
以下の文字列が与えられます:
txt = 'aaa 123 bbb 456 987'
数字を含むすべての部分文字列を三つの キャプチャグループに分けてください。 そしてループを使用してそれらを出力してください。