質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Python 3.x

Python 3はPythonプログラミング言語の最新バージョンであり、2008年12月3日にリリースされました。

Q&A

解決済

1回答

999閲覧

're.Match' object has no attribute

退会済みユーザー

退会済みユーザー

総合スコア0

Python 3.x

Python 3はPythonプログラミング言語の最新バージョンであり、2008年12月3日にリリースされました。

0グッド

0クリップ

投稿2019/03/26 15:17

re.Match object を他のデータ型にして、普通のオブジェクトとして利用する方法はありますか?(正規表現)

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

tiitoi

2019/03/26 15:21 編集

「普通のオブジェクト」では漠然としすぎているので、具体的にやりたい例を記載してください。
退会済みユーザー

退会済みユーザー

2019/03/26 15:23

例えばlist()の中にobjectとして入れるなど、 re.matchのままでは変換できないので
tiitoi

2019/03/26 15:29

re.match(pattern, text) は文字列 text の先頭が pattern にマッチするかどうかを返す関数なので、マッチしたら re.Match オブジェクト、マッチしなければ None を返します。 マッチした文字列を得たいなら、match.group() で得られますが、リストにするという意味がよくわかりません。
退会済みユーザー

退会済みユーザー

2019/03/26 15:54

変数に英数記号が含まれていて、英字のみをとりだして、そのオブジェクトにさまざまなメソッドを作用させたあとreturnすることを考えています。  そこで、正規表現を用いました。 re.compile('^[a-zA-Z]+$') を text(="Hello World!")に作用させて、英字のみを取り出そうとしました。
quickquip

2019/03/26 22:17

入力の例とほしい結果があるといいんじゃないでしょうか。なにをしたいのかを回答者が正規表現から想像しないといけない質問になっています(そしてわからない)。あと、情報はこの欄ではなくて質問に追記するようにしましょう。
guest

回答1

0

ベストアンサー

そこで、正規表現を用いました。 re.compile('^[a-zA-Z]+$') を text(="Hello World!")に作用させて、英字のみを取り出そうとしました。

そのような意図であれば、re.findall() を使うと、match オブジェクトではなく、マッチした文字列のリストを返すので、この関数をお使いください。

python

1import re 2 3text = 'Hello World....123test-hoge' 4 5match = re.findall(r'[A-Za-z]+', text) 6print(match) # ['Hello', 'World', 'test', 'hoge']

投稿2019/03/26 21:19

tiitoi

総合スコア21956

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問