把其中的数字转换为金额格式

/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package javaapplication1;

import java.text.NumberFormat;
import java.util.regex.Matcher;
import java.util.regex.Pattern;

/**
 *
 * @author lenovo
 */
public class NumberStringMoney {

    public static void main(String args[]) {
        
        //把其中的数字转换为金额格式
        Pattern p = Pattern.compile("\\d+");
        Matcher m = p.matcher("此合同金额为:200000000l");
        NumberFormat nf = NumberFormat.getInstance();
        StringBuffer sb = new StringBuffer();
        while (m.find()) {
            String g = m.group();
            System.out.println(g);
            m.appendReplacement(sb, nf.format(Double.parseDouble(g)));
        }
        String result = sb.toString();
        System.out.println("result:" + result);
        
        //单纯数字转换为金额格式
        nf = NumberFormat.getInstance();
        String str1 = nf.format(200000000l);
        System.out.println(str1);


    }
}


/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package javaapplication1;

import java.util.regex.Matcher;
import java.util.regex.Pattern;

/**
 * 把其中的数字转换了金额格式
 * @author lenovo
 */
public class Example {
    private static final String REGEX = "\\d+";  
    public static void main(String[] args) {     
        String input = "dog dog 1342.22 dog doggie 2321 dogg";
        Pattern p = Pattern.compile(REGEX);    
        Matcher m = p.matcher(input); // get a matcher object     
        int end = 0;     String result = "";    
        while (m.find()) {        
            result = result + input.substring(end, m.start()); 
            result = result + addCommas(input.substring( m.start(), m.end())); 
            end = m.end();     
        }     System.out.println(result); 
    }  
    
    private static String addCommas(String s) {     
        char[] c = s.toCharArray();     
        String result = "";    
        for (int i = 0; i < s.length(); i++) {         
            if (s.length() % 3 == i % 3)             
                result += ",";          
            result += c[i];     
        }     
        return result; 
    } 
}

你可能感兴趣的:(转换)