@ciel_tktk

Are you sure you want to delete the question?

Leaving a resolved question undeleted may help others!

リストから正規表現で一致する文字列を取得したい

解決したいこと

リストから正規表現で一致する文字列を取得したい。
リストでなく1文であれば欲しい文字列を取得できるのですが、

import re

s = '12APR,14MAY, test, 29APR'

for m in re.findall('\d{2}\w{3}', s):
    print(m)

12APR
14MAY
29APR

こちらのようにリストから上と同じようにそれぞれの列から正規表現に一致する値を取るにはどうすれば良いでしょうか?

s = ['12APR','14MAY', 'test', '29APR']

for文で抜き出して取れるのかと思ってチャレンジしたのですが、解決できないのでお知恵をお借りしたいです。

0 likes

1Answer

正規表現の処理は基本的に文字列を対象とするので、リストの場合は文字列単位で処理させることになりますね。

for m in [item for item in s if re.match('\d{2}\w{3}', item)]:
    print(m)
1Like

Comments

  1. @ciel_tktk

    Questioner

    ありがとうございます!勉強になりました!

Your answer might help someone💌