Я занимаюсь интеллектуальным анализом данных по огромному количеству финансовых данных, и мне нужно найти два регулярных выражения Python, которые соответствуют:
Цены, такие как:
16 666 666.67
16 666 666,67
666 666.67
5 567.1
5 677,1
0.0
0,101
5,4
5.40
54.0
5.675674754747457
5980990.009345
16,000.45
234,234,657.108
В цене всегда есть запятая или точка. Но перед запятой могут быть пробелы (пробелы должны быть согласованными, а не, например, 56 34.345
)
Объем (количество), например:
9898
5
450934
5,000
1,000
1,000,000
5,998
11
0
5 000
1 000 000
1 980 000 000
599
233 590
23 613
181 876 980
Количество никогда не разделяется точками. Он не может иметь десятичных знаков в принципе.
Вот тот, который я пробовал для цен: (^[0-9]{0,}$)|(\d{1,}(?:[.,]\d{3})*(?:[.,]\d*))
Но я не могу обрабатывать пробелы.
А для объема мне очень сложно, так как везде тоже есть пробелы!
Большое спасибо.
(
или что-то приклеено, да - person zakk8889   schedule 15.03.20190,1
совпадает с0.1
, но1,000.0
отличается от1,000
? - person CoffeeTableEspresso   schedule 15.03.20190,101
совпадает с101
? - person CoffeeTableEspresso   schedule 15.03.20191,000.0
и1,000
идентичны - person zakk8889   schedule 15.03.2019666 666.67
и5 567.1
, но НЕ хотите, чтобы они соответствовали56 34.345
. Какую именно разницу вы хотите исключить в этих примерах? - person FailSafe   schedule 15.03.20190,101
не должно быть возможным для количества. Я обновлю свой пост, количество всегда должно быть положительным и естественным - person zakk8889   schedule 15.03.201956 34.345
неправильно, правильно5 634.345
- person zakk8889   schedule 15.03.20195,4
. - person CoffeeTableEspresso   schedule 15.03.20195,4
в порядке,5.4
в порядке,5,4.5
не в порядке,5,400.5
в порядке - person zakk8889   schedule 15.03.2019dot separated
вы имеете в видуhas a decimal place
? - person CoffeeTableEspresso   schedule 15.03.20195,4
таким же, как5.4
(только пишется по-другому)? - person CoffeeTableEspresso   schedule 15.03.2019