<?php
//$string = 'we 100 200\'300,400,500,600,700,800,900 wf ';
//$string = 'ara +1.200.009z';
//$string = 'we 100,200,300,400,500,600,700,800,900 wf ';
$string = 'we -100,200:300,400,500,600,700,800,900.9 wf ';
//$string = 'we +1200300400500600700800900.99 wf ';
//$string = 'we +1200300400500600700800900.99 wf';
//preg_match_all('/([+-])?[\d.,]+([.,]\d{1,2})?/', $string, $matches);
//preg_match_all("/[+-]?\d{1,3}[.,]+(\d{3}[.,'])(?R)?/", $string, $matches);
//preg_match_all("/[+-]?\d{1,3}[., ]?(?:\d{3}[., ]?)(?R)?/", $string, $matches);
//preg_match_all("/\d{1,3}(?:[,]?\d{3})(?R)?/", $string, $matches);
//preg_match_all('/[+-]?\d{1,3}(?:,?\d{3})*(?:\.\d{2})?/', $string, $matches);
preg_match_all('/(?<sign>^|\D)\d{1,3}(?:([,.:])?\d{3})*(?:(?<decimal_sep>[.,])\d{1,2}(?=\D))?/', $string, $matches);
print_r($matches);
preferences:
44.38 ms | 402 KiB | 5 Q