始めまして、プログラミング初心者です。
早速ですが、ご質問です。以下の正規表現のコードをjupyter Notebook(windows10)で実行しています。
python3
1import re 2 3text = "3 1,234 12,34,567 6,368,745" 4 5num_regex = re.compile(r"(\d{,3}(,\d{3})*)") 6mo = num_regex.findall(text) 7print(text) 8 9>>>[('3', ''), 10 ('', ''), 11 ('1,234', ',234'), 12 ('', ''), 13 ('12', ''), 14 ('', ''), 15 ('34,567', ',567'), 16 ('', ''), 17 ('6,368,745', ',745'), 18 ('', '')] 19 20
このコードで実現したいことは、 三桁ごとにカンマが付いた数字のみに一致させたいです。
一致したい例は、上では 3 1,234 6,368,745
一致して欲しくない例は、上では12,34,567 他では、1234です。
なって欲しいイメージは
[("3",""),("1,234",",234"),("6,368,745",",368,745")] です。
また、上記のコードの実行結果('6,368,745', ',745')の最後がなぜ、,368,745にならないのでしょうか?
回答の程よろしくお願いします。
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。