2017-03-26 4 views
3

Hallo all, ich habe diesen regulären Ausdruck und es druckt die Werte, die ich will. Sie sind jedoch getrennt.Regulärer Ausdruck, die Werte werden nicht korrekt ausgegeben

Zum Beispiel:

['7', '336.82', '-3.89', '-0.05', '7', '351.60', '7', '322.86', '7', '340.71'] 

ist, was es

druckt

Aber ich will es drucken zu:

['7,336.82', '-3.89', '-0.05', '7,351.60', '7,322.86', '7,340.71'] 

Bitte könnte jemand helfen?

Vielen Dank im Voraus.

Antwort

3

Anscheinend möchten Sie Zahlen erfassen, die durch ein Komma getrennt sind. Sie können:

r'[-+]?(?:\d+[\d,]*)?\.?\d+' 

RegEx Demo

+1

Perfect, danke. – NoName788

0

Wenn Zahlen zwingende 3 Stellen hinter dem Komma Validierung notwendig ist:

[-+]?\d{1,3}(\,\d{3})*(\.\d+)? 

wenn der Eingang ist 1,000,00.0 es bedeutet: 1,000 und 00.0 in dieser Antwort.

Demo: https://regex101.com/r/8nYbaQ/2

Wenn 01,123 ablehnen sollte: (wegen des Starts 0 digit)

(\+?[1-9]|\-\d)\d{0,2}(\,\d{3})*(\.\d+)? 

Demo: https://regex101.com/r/8nYbaQ/3

+0

Hallo, tolle Antwort ... Vielen Dank. – NoName788