ホームページ  >  記事  >  Java  >  Javaで小数点区切り文字を保持しながら文字列から数字以外の文字を削除するにはどうすればよいですか?

Javaで小数点区切り文字を保持しながら文字列から数字以外の文字を削除するにはどうすればよいですか?

DDD
DDDオリジナル
2024-11-02 03:11:02921ブラウズ

How to Remove Non-Numeric Characters from a String While Preserving Decimal Separators in Java?

Java で小数点区切り文字を保持しながら文字列から数値以外の文字を削除する方法

数値と非数値の両方を含む文字列を扱う場合-数字の場合、小数点区切り文字を保持したまま後者を削除する必要があります。これを達成するには、特定のアプローチが必要です。

問題:

目標は、文字列から数字 (0 ~ 9) ではないすべての文字を削除することです。ただし、小数点の区切り文字を維持する場合に問題が発生します。デフォルトでは、Character.isDigit() を使用すると、文字と小数点の両方が削除されます。

解決策:

この問題に対処するには、正規表現と文字列操作を組み合わせます。

<code class="java">String str = "a12.334tyz.78x";
str = str.replaceAll("[^\d.]", "");</code>

このコードは String クラスの replaceAll メソッドを利用します。正規表現 [^\d.] は、数字やピリオド以外のすべての文字に一致します。これらを空の文字列に置き換えると、結果の文字列 str には数字と小数点区切り文字のみが含まれます。

たとえば、入力文字列「a12.334tyz.78x」の場合、出力文字列は「12.334」になります。 .78」。小数点は保持したまま、数字以外の文字がすべて削除されています。

以上がJavaで小数点区切り文字を保持しながら文字列から数字以外の文字を削除するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。