Menu

PHP - Supprimer les espaces d'une chaine [Résolu/Fermé]

antic80 4809 Messages postés lundi 30 mai 2005Date d'inscriptionContributeurStatut 9 septembre 2009 Dernière intervention - 16 mai 2006 à 12:04 - Dernière réponse : midnnight 498 Messages postés jeudi 23 février 2006Date d'inscription 26 juillet 2017 Dernière intervention
- 24 mars 2014 à 22:38
bonjour

voila j'aimerai savoir quelle fonction permet de supprimer tous les espaces d'une chaine de caractere

merci
Afficher la suite 

25 réponses

Meilleure réponse
kilian 8897 Messages postés vendredi 19 septembre 2003Date d'inscriptionContributeurStatut 20 août 2016 Dernière intervention - 17 mai 2006 à 00:16
121
Merci
merci j'ai deja vu ces fonctions mais aucune ne vas

Tu n'as pas du bien regarder ces fonctions.
Tu peux faire ça en une ligne avec str_replace:
$text='ton texte';
$text=str_replace(' ','',$text);

Merci kilian 121

Avec quelques mots c'est encore mieux Ajouter un commentaire

CCM a aidé 24040 internautes ce mois-ci

midnnight 498 Messages postés jeudi 23 février 2006Date d'inscription 26 juillet 2017 Dernière intervention - 24 mars 2014 à 22:38
Superbe ! (oui je sais que le post est ancien mais des gens passent parfois) => sauf que la syntaxe est :
<?php
// autre
$text='ton texte'; // il y a un espace
$text2=str_replace(' ','-',$text); // on remplace l'espace par un -
print $text2; echo "--->cool ça marche..." // on écrit le texte sans espace avec un -
?>
facile, certe, mais bon ;)
(enfin pour ceux qui veulent remplacer un espace par un tirait... Facile à adapter...:)
36
Merci
ces méthodes sont peu optimisées mieux vaut utiliser preg_replace :
$machaine=preg_replace('/\s\s+/', '', $machaine);
voilà en espérant que ça aide...
oups trop habitué à chercher les doubles espaces.... pour supprimer tous les espaces :
$machaine=preg_replace('/\s/', '', $machaine);
voilà
merci pour ta soluce pour les doubles espaces :)
efficace et pas lourd en mémoire
Pascal_22 536 Messages postés lundi 20 mars 2006Date d'inscription 8 octobre 2015 Dernière intervention - 16 mai 2006 à 21:08
22
Merci
salut

le Trim(MaVariable) enleve les espaces a gauche et a droite !!

Bonne chance

Pascal_22
12
Merci
En php :

$chaine = str_replace(CHR(32),"",$chaine);

et voilà, tous les espaces de $chaine sont supprimés ...
8
Merci
Pour ce type d'opé simple mieux vaut utiliser str_replace moins gourmand qu'une regex
ecarbill 19 Messages postés mardi 11 janvier 2005Date d'inscription 8 octobre 2013 Dernière intervention - 14 janv. 2008 à 17:52
3
Merci
Voici une fonction que tu peux améliorer toi-meme


function SupprimeLettre($Lettre_a_Supprimer,$Texte)
//Fonction qui supprime tous les caractères "$Lettre_a_Supprimer" du texte "$Texte"
{
$resultat=""; //variable résultat
//on parcour le texte à la recherche de $Lettre_a_Supprimer
for ($compteur=0;$compteur<strlen($Texte);$compteur++)
{
//si la lettre rencontrée n'est pas à exclure, alors on l'ajoute à la variable $resultat
if (substr($Texte,$compteur,1)!=$Lettre_a_Supprimer) $resultat.=substr($Texte,$compteur,1);
}
return $resultat ;
}
//Pour supprimer tous les espaces, tu fais:
echo SupprimeLettre(" ","Tu peux toujours améliorer cette fonction. éhééèè");
//Pour supprimer tous les "è", tu fais:
echo SupprimeLettre("è","Tu peux toujours améliorer cette fonction. éhééèè");
3
Merci
concernant Jogan =>
ta méthode est bonne, mais le \s peut supprimer aussi les retours chariot il me semble....
Je conseillerait plutôt :

$machaine = preg_replace('/ /','',$machaine);
str_replace est plus rapide que preg_replace. Il faut donc mieux utiliser str_replace ;)
bien tous je retourne à mon Java !!
3
Merci
Pourquoi ne pas utiliser le fonction strtr() :

<?php
    $chaine = "Il a des   raviolis";
	$conversion = array(" "=>"");
	$chaine = strtr($chaine,$conversion);
	echo $chaine;
 
    //Resultat : Iladesraviolis	
?>


Cela me semble plus simple....
antic80 4809 Messages postés lundi 30 mai 2005Date d'inscriptionContributeurStatut 9 septembre 2009 Dernière intervention - 16 mai 2006 à 21:12
1
Merci
oui j'avais vu cette fonction mais moi je veux retirer tous les espaces

par exemple si j'ai la variable

$text=mon texte

je veux obtenir

montexte
antic80 4809 Messages postés lundi 30 mai 2005Date d'inscriptionContributeurStatut 9 septembre 2009 Dernière intervention - 16 mai 2006 à 21:34
1
Merci
je maitrise pas trop php donc si kelkun peux m'aider
torto proton - 15 avril 2008 à 15:31
1
Merci
Salut

Ce code ne fonctionne pas : la fonction renvoie la première lettre de la chaine multipliée par le nombre de caractères de la chaine. Exemple :
pour $maChaine='il fait beau';
echo supprimeLettre(" ",$maChaine)
donne : iiiiiiiiiiiiii
antic80 4809 Messages postés lundi 30 mai 2005Date d'inscriptionContributeurStatut 9 septembre 2009 Dernière intervention - 16 mai 2006 à 14:20
0
Merci
personne ne sait ou alors si il y a un moyen de le faire
antic80 4809 Messages postés lundi 30 mai 2005Date d'inscriptionContributeurStatut 9 septembre 2009 Dernière intervention - 17 mai 2006 à 09:13
0
Merci
ok merci killian
0
Merci
<?php
$str = 'foo o';
$str = preg_replace('/\s\s+/', ' ', $str);
// Affichera 'foo o'
echo $str;
?>
Pascal_22 536 Messages postés lundi 20 mars 2006Date d'inscription 8 octobre 2015 Dernière intervention - 16 mai 2006 à 21:30
-1
Merci
salut !!

J'avais pas vu que c'Est en PHP.

Je ne connais pas trop php, mais ce que je te conseil pour ne pas perdre ton temps, tu fais un boucle sur chaque caractere de ta phrase, et si c'est égale à " " (un espace) tu l'enleves

J'espere t'avoir aider !!

Pascal_22
Gihef 5162 Messages postés mercredi 20 juillet 2005Date d'inscriptionContributeurStatut 7 août 2008 Dernière intervention - 16 mai 2006 à 21:45
-1
Merci
Bonjour,

Je ne maîtrise pas du tout PHP, mais en cherchant un peu, j'ai trouvé ça :
http://doc.domainepublic.net/php/doc.php.court/ref.strings.html

Dedans on trouve des choses comme :
http://doc.domainepublic.net/php/doc.php.court/function.substr-replace.html
et
http://doc.domainepublic.net/php/doc.php.court/function.str-replace.html

Ça peut certainement te servir ?

Et puis, t'as vu, il y a des :
trim, ltrim, rtrim, count_chars… au cas où.

Pas mal, non ?
antic80 4809 Messages postés lundi 30 mai 2005Date d'inscriptionContributeurStatut 9 septembre 2009 Dernière intervention - 16 mai 2006 à 22:32
-1
Merci
bon comment te dire ca rapidement bravo

je dis chapo bas merci a toi pascal
Pascal_22 536 Messages postés lundi 20 mars 2006Date d'inscription 8 octobre 2015 Dernière intervention - 16 mai 2006 à 22:06
-2
Merci
Salut

J'ai trouver

$Text="la maison";
$Nouvelle="";



for ($i = 0; $i < strlen($Text); $i++) {
if (substr($Text, $i,1) != ' ')
{
$Nouvelle=$Nouvelle . substr($Text, $i,1);
}

echo $Nouvelle;

la variable % echo devrais etre "lamaison"

Rodonne moi en des nouvelles !!!

Pascal_22

}
antic80 4809 Messages postés lundi 30 mai 2005Date d'inscriptionContributeurStatut 9 septembre 2009 Dernière intervention - 16 mai 2006 à 22:23
-2
Merci
merci j'ai deja vu ces fonctions mais aucune ne vas