Для проекта мне нужно заменить пробелы на
, если - и только если - они встречаются в предопределенном формате валюты.
Например:
EUR 1.2
EUR 1.23
EUR 12
EUR 123
EUR 12 Mio.
EUR 12 345 Mio.
GBP 1 123 456 789 Mio. <---- this one is a problem, only matching the first, second to last and last one, but not those inbetween
USD 12 million
EUR 1.23 billion
Так что в основном[CurrencyPrefix] [пробел] [количество [с_пространствами]] [Суффикс]
Это то, что я до сих пор придумал:
(?:EUR|USD|GBP)(\ )(?:(?:(?:\d+(\ ))+\d+)|\d+\.\d+|\d+)+(?:(\ )(?:Mio\.|million|billion))?
См .: https://regex101.com/r/z73ISR/5
Проблема в том, что он соответствует пробелу только 3 раза.Мне нужно сопоставить его [n] раз (см. Пример с GBP).