110 votes

Supprimer espace excédentaire de dans une chaîne

<p>Je reçois une chaîne à partir d’une requête de base de données, puis supprimer toutes les balises HTML, des retours chariot et des sauts de ligne avant que je l’ai mis dans un fichier CSV. Seule chose est, je ne peux pas trouver un moyen de supprimer <strong>l’excès</strong> espace blanc <em>entre</em> les cordes.</p> <p>Quel serait le meilleur moyen d’enlever les espaces intérieurs ?</p>

249voto

jW. Points 3430

Vous ne savez pas exactement ce que vous voulez, mais voici deux situations:

  1. Si vous êtes juste faire face à un excès d'espaces au début ou à la fin de la chaîne de caractères que vous pouvez utiliser trim(), ltrim() ou rtrim() pour l'enlever.

  2. Si vous êtes aux prises avec des espaces supplémentaires au sein d'une chaîne d'envisager un preg_replace de plusieurs espaces " "* avec un seul espace " ".

Exemple:

$foo = preg_replace('/\s+/', ' ', $foo);

42voto

Cory Dee Points 1527
<pre><code></code><p>Ou, remplacez par le trait de soulignement, &amp; nbsp ; etc etc.</p></pre>

20voto

d-_-b Points 3491
<p><code></code><p>Au-dessus de la ligne de code va supprimer des espaces <em>supplémentaires</em> , ainsi que les espaces de début et de fin.</p></p>

16voto

Lukas Liesis Points 564
<p>aucun des autres exemples a fonctionné pour moi, donc j’ai utilisé celui-ci :<pre><code></code></pre><p>Cela remplace tous les onglets, de nouvelles lignes, double espaces etc. à simple 1 place.</p></p>

4voto

Sandip Layek Points 41
<p><code></code></p>

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by: