Quelle est la meilleure façon pour moi de faire cela? Devrais-je utiliser regex ou existe-t-il une autre fonction PHP) que je peux utiliser?
Par exemple, je voudrais: 12 months
devenir 12
. Every 6 months
devenir 6
, 1M
devenir 1
, etc.
Je vous remercie
Vous pouvez utiliser preg_replace dans ce cas;
$res = preg_replace("/[^0-9]/", "", "Every 6 Months" );
$ res retourne 6 dans ce cas.
Si vous souhaitez également inclure un séparateur décimal ou un séparateur de milliers, vérifiez cet exemple:
$res = preg_replace("/[^0-9.]/", "", "$ 123.099");
$ res renvoie "123.099" dans ce cas
Incluez un point comme séparateur décimal ou séparateur de milliers: "/[^0-9.]/"
Inclure le coma comme séparateur décimal ou séparateur de milliers: "/ [^ 0-9,] /"
Incluez le point et le virgule comme séparateur décimal et séparateur de milliers: "/[^0-9,.HER/"
Utilisation \D
pour correspondre aux caractères non numériques.
preg_replace('~\D~', '', $str);