同じ文字列からドル記号($)とすべてのコンマ(、)を削除するにはどうすればよいですか?正規表現を避ける方が良いでしょうか?
String liveprice = "$123,456.78";
このようにします
NumberFormat format = NumberFormat.getCurrencyInstance();
Number number = format.parse("\$123,456.78");
System.out.println(number.toString());
出力
123456.78
試して、
String liveprice = "$123,456.78";
String newStr = liveprice.replaceAll("[$,]", "");
replaceAll
は、正規表現を使用して、連続するreplace
メソッドで試行するよりも正規表現を回避します。
String liveprice = "$1,23,456.78";
String newStr = liveprice.replace("$", "").replace(",", "");
正規表現なしで、これを試すことができます:
String output = "$123,456.78".replace("$", "").replace(",", "");
私の場合、@ Prabhakaranの答えはうまくいきませんでした。誰かがこれを試すことができます。
String salary = employee.getEmpSalary().replaceAll("[^\\d.]", "");
Float empSalary = Float.parseFloat(salary);
詳細はこちら Oracle JavaDocs :
liveprice = liveprice.replace("X", "");
代わりにReplace
を使用してください
String liveprice = "$123,456.78";
String output = liveprice.replace("$", "");
output = output .replace(",", "");
スウェーデンクローナ通貨の使用例
String x = "19.823.567,10 kr";
x=x.replace(".","");
x=x.replaceAll("\\s+","");
x=x.replace(",", ".");
x=x.replaceAll("[^0-9 , .]", "");
System.out.println(x);
出力を提供します-> 19823567.10(これは現在、あらゆる計算に使用できます)
本当に交換が必要ですか?
public void test() {
String s = "$123,456.78";
StringBuilder t = new StringBuilder();
for ( int i = 0; i < s.length(); i++ ) {
char ch = s.charAt(i);
if ( Character.isDigit(ch)) {
t.append(ch);
}
}
}
これは、どの装飾番号でも機能します。