Pythonでこの特定の正規表現を一致させることに問題があります。誰かが何が悪いのかわかりますか?
単一の正規表現と一致させようとしているサンプル文字列は次のとおりです。
string = '[Pre-Avatar Mode Cost: 5.50 MP]'
string = '[Pre-Avatar Mode Cost: 1.2 MP]'
string = '[Pre-Avatar Mode Cost: 0.5 MP]'
string = '[Post-Avatar Mode: 0 MP]'
私は次のことを試しましたが、それらすべてに一致する単一の式がないようです。
m = re.match('\[.*(?P<cost>\d+(\.\d+)).*\]', string) # Appears to match only ones with #.#
m = re.match('\[.*(?P<cost>\d+(\.\d+)?).*\]', string) # Appears to match the 0 only, unable to print out m.groups for the others
キャッチしようとしています(5.50、1.2、0.5、0など)