Comment supprimer les caractères non numériques d'une chaîne tout en préservant les séparateurs décimaux en Java
Lorsque vous travaillez avec des chaînes contenant à la fois des valeurs numériques et non numériques -caractères numériques, il devient nécessaire de supprimer ces derniers tout en conservant les séparateurs décimaux. Y parvenir nécessite une approche spécifique.
Problème :
Le but est d'éliminer tous les caractères qui ne sont pas des chiffres (0-9) d'une chaîne. Cependant, le défi se pose lorsqu’il s’agit de conserver le séparateur décimal. Par défaut, l'utilisation de Character.isDigit() supprime les lettres et le séparateur décimal.
Solution :
Pour résoudre ce problème, une combinaison d'expressions régulières et de manipulation de chaînes peut être utilisé :
<code class="java">String str = "a12.334tyz.78x"; str = str.replaceAll("[^\d.]", "");</code>
Ce code utilise la méthode replaceAll de la classe String. L'expression régulière [^\d.] correspond à tous les caractères qui ne sont pas des chiffres ou des points. En les remplaçant par une chaîne vide, la chaîne résultante str ne contiendra que les caractères numériques et les séparateurs décimaux.
Par exemple, étant donné la chaîne d'entrée "a12.334tyz.78x", la chaîne de sortie sera "12.334 .78", où tous les caractères non numériques ont été supprimés tout en conservant les points décimaux.
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!