実装したい内容

CSVで書き込んだ(tweet.text)から取得したtextのツイートを@mikipddw2on11のみ取得したいです。

ツイート(text)

RT @mikipddw2on11: 今日の天気 #PR https://t.covIC68vSr4545

RT @mikipddw2on11:の文字から始まりますが、別のツイートからRTがない場合
今日の天気から文字はじめます。
取得したいのは、@mikipddw2on11のみだけです。
文字列は毎回異なりますが、RTがない場合、セルを空白にしたいです。

実装とエラー

他の方から別の質問にて正規表現でマッチさせる方法があると教えていただきましたが、

下記の2パターンの方法でやってみましたが、下記のようにエラーが表示されます。

コード①

import tweepy
import csv
import re

consumer_key = ""
consumer_secret = ""
access_key = ""
access_secret = ""

auth = tweepy.OAuthHandler(consumer_key, consumer_secret)
auth.set_access_token(access_key, access_secret)
api = tweepy.API(auth)

#ツイート取得
tweet_data = []
data = api.get_user

for tweet in tweepy.Cursor(api.user_timeline,screen_name = "ID",exclude_replies = True).items():
    tweet_data.append([tweet.id,tweet.user.screen_name,tweet.created_at,tweet.text.replace('\n',''),tweet.favorite_count,tweet.retweet_count])

    pattern = re.compile(r"^RT (@(\w){1,15})")
    def get_username(tweet.text):
    for x in pattern.finditer(tweet.text):
        return x.group(1)

#csv出力
with open('tweets.csv', 'w',newline='',encoding='utf-8_sig') as f:
    writer = csv.writer(f, lineterminator='\n')
    writer.writerow(["user_id","username","created_at","text","fav","RT"])
    writer.writerows(tweet_data)

    df["text"] = [get_username(x) for x in df["retweet_count"]]
    df.to_csv("test_out.csv", index=False)

pass

エラー内容①

File "im.py", line 23
    for x in regex.finditer(tweet.text):
      ^

別の方法②でもやってみましたが、

コード

・・・省略

    pattern = re.compile(r"^RT (@(\w){1,15})")
    result1 = pattern.match(tweet.text)

#csv出力
with open('tweets.csv', 'w',newline='',encoding='utf-8_sig') as f:
    writer = csv.writer(f, lineterminator='\n')
    writer.writerow(["user_id","username","created_at","text","fav","RT"])
    writer.writerows(tweet_data)

方法②はエラー表示されませんが、tweet.textの列textにはRTのアカウントはないです。

長文で失礼いたしました。
もし分かる方いれば教えていただけますでしょうか?
お手数ですがよろしくお願いします。