私は自分のプログラムに必要な情報を見つけることができず、誰かが私を助けてくれることを願っています。 私は、各行に数字と文字を持っています。特定の数字の前に特殊文字があります。 各行は次のようになります。特定の情報を抽出する
12456 t0 45 54 # 36478 t04 # 37489 to4 # 83940 to5 + 63748 nn 00 +374840 bb 009 + 144839 op 45
私は彼らの前に#と+と数字を抽出する必要があります。
そして結果はこのように、3タプルのようになります。リストとして彼らの前に
(最初の数、リスト、それらの前に#を持つすべての数字(スペースまで)、+を持つすべての番号(スペースまで、to4なし、to5など)):
(12456, [36478, 37489, 83940], [63748, 375840, 144839])
このタスクの正規表現はありますか?ここで
のためにありがとうございました!もう1つ質問:「+ \ s *(\ d +)」と+の代わりに*を使用すると(「\ * \ s *(\ d +)」) hm、( "#\ s *(\ d +)")もうまくいきません... r1とr3 ... –
のみ\ +はエスケープ文字を意味します(+は正規表現の特殊文字です)任意の文字に一致することができます –
ええ、私は*の代わりに*が必要な場合(私はこれを必要とする* 637383 \と私は正規表現の特殊文字としてエスケープしたい*)しかし、それは動作しません:AttributeError: ' NoneType 'オブジェクトには' group '属性がありません。私はちょうど+の代わりに*を入れて、うまくいきません.... –