Bonjour,
Avis aux experts des expressions régulières !
Je souhaite supprimer les zeros dans une string :
AP000123456 => AP123456
Merci pour votre aide !
Version imprimable
Bonjour,
Avis aux experts des expressions régulières !
Je souhaite supprimer les zeros dans une string :
AP000123456 => AP123456
Merci pour votre aide !
?? Meme pas besoin d'expression régulièreCode:str_replace('0', '', $text);
Mon exmple était pas bon :
AP000123001 => AP123001
Je veux pouvoir supprimer les padding left mais pas tous les zero...
On supprime un nombre quelconque de 0 (au moins 1) suivis d'un chiffre entre 1 et 9 qui est lui même suivi d'autant de chiffres que l'on veux (entre 0 et 9).
Code:preg_replace('#0+([1-9][0-9]*)#', '$1', $ligne);
Merci pour votre réponse mais ne rend pas le résultat que j'attends.
Ah bon ?
Me retourne pourtant le bon résultat....Code:preg_replace('#0+([1-9][0-9]*)#', '$1', 'AP000123001');
Edit : Effectivement,ne retourne pas ce qu'il fautCode:preg_replace('#0+([1-9][0-9]*)#', '$1', 'AP1000123001');
EditBis :Semble mieux fonctionnerCode:preg_replace('#([^0-9]|\b)0+([1-9][0-9]*)#', '$1$2', 'AP1000123001');
Code:
1
2 preg_replace('#(\D)0+#','\\1',$chaine)
Merci pour vos reponses !
Quelle est la signification du diese # ?
Il s'agit d'un signe qui délimite l'expression régulière. Il peut sagire de nimporte quel caractère qui n'est pas dans l'expression en elle meme. Il est courant de prendre le #, le ` et d'autres caractères tres peu présents dans les chaines.
Ceci me convient :
[A-Z]0+{1}
Merci pour vos réponses !
le {1} n'a aucun sens ^^