Avatar ·

Extraction d'un entier d'une chaîne en PHP : comment obtenir uniquement les chiffres ?

Bonjour à tous ! Je suis débutant en PHP et j'ai rencontré un problème. J'ai une chaîne, par exemple : "Prix : 1234 roubles" ou "Réf. #5678-90". Je dois en extraire un entier (non signé), c'est-à-dire obtenir uniquement les chiffres, en supprimant tout le reste. J'ai essayé d'utiliser (int), mais cela ne fonctionne que si la chaîne commence par un chiffre. Si la chaîne est "Prix 100", alors (int) donne 0, alors que j'ai besoin de 100. J'ai essayé avec preg_match et l'expression régulière '/\d+/', mais je ne suis pas sûr que ce soit correct, surtout si la chaîne contient plusieurs nombres (par exemple, "Code 123, prix 456"). Veuillez me conseiller sur la manière fiable d'extraire un seul entier d'une chaîne. Idéalement avec un exemple de code. Merci d'avance ! Exemples de chaînes : - "Commande n° 98765" - "Montant : 1500 roubles" - "ID : 42" - "Résultat : 0 erreurs" Quelle est la méthode la plus simple et la plus compréhensible pour un débutant ? <<>>

Utilisation de preg_match() pour extraire le premier nombre

La méthode la plus fiable et flexible est d'utiliser les expressions régulières avec la fonction preg_match().