0

私は変数を言うq

q="today(Thursday)^05^*07*[2012]"

Thursday、、、05を別々07に抽出する方法はありますか?2012

4

4 に答える 4

3

試す

q = "today(Thursday)^05^*07*[2012]"
import re
print re.findall(r'\w+', q) # ['today', 'Thursday', '05', '07', '2012']
于 2012-07-05T12:24:34.877 に答える
2

別の代替手段(ただし、@ thg435ソリューションを好みます):

r=re.split('[\^*()[\]]', q) #['today', 'Thursday', '', '05', '', '07', '', '2012', '']

それから

r[1::2]

収量

['Thursday', '05', '07', '2012']

余談:インターリーブされた空の文字列を取得している理由を誰かが知っていますか? 回避するのは簡単ですが、そもそもそれらを持たない方がよいでしょう。

于 2012-07-05T12:49:00.503 に答える
0

次の正規表現を使用します。

(?<=\()(.+)(?=\))|(?<=\^)(.+)(?=\^)|(?<=\*)(.+)(?=\*)|(?<=\[)(.+)(?=\])
于 2012-07-05T12:26:57.023 に答える
0

文字列区切りを使用します。

string.split[^*]

于 2012-07-05T12:28:07.377 に答える