Vous disposez d'une chaîne contenant des espaces entre chaque mot et vous souhaitez supprimer ces espaces inutiles. La fonction trim() supprime uniquement les espaces de début et de fin, tandis que replaceAll("\W", "") supprime tous les caractères autres que des mots, y compris le signe égal (=).
Pour obtenir le résultat souhaité, vous pouvez utiliser le remplacement basé sur une expression régulière suivant :
st.replaceAll("\s+", "")
Cette expression supprime tous les caractères d'espacement consécutifs (\s ) de la chaîne. Le quantificateur correspond à un ou plusieurs caractères d'espacement, supprimant ainsi tous les espaces.
Vous pouvez également utiliser l'expression simplifiée suivante, qui produit le même résultat :
st.replaceAll("\s", "")
Cette expression supprime tous les caractères uniques. caractères d'espacement de la chaîne.
Bien que la deuxième expression soit légèrement plus rapide (environ 20 %), elle n'est pas aussi efficace que la première expression lorsqu'il s'agit de un grand nombre d'espaces consécutifs. Par conséquent, pour des performances optimales, il est recommandé d'utiliser st.replaceAll("\s ", "").
N'oubliez pas d'attribuer la chaîne mise à jour à une variable si vous ne l'utilisez pas directement :
st = st.replaceAll("\s+", "")
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!