java中过滤去重

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

/**
 * Time
 *
 * @Author lhl
 * @DATE: 2020/4/26
 */
public class fff {
     
    public static void main(String[] args) {
     


        String str = "100GGmm袋袋";
        String num = getString(str);
        System.out.println(num);//输出结果100Gm袋


    }
    
    //过滤字母,中文(特殊字符没有占时没有处理)
    private static String getString(String str) {
     
        String s = "";
        String num= filterNumber(str);
        Matcher m = Pattern.compile("(\\D)\\1*").matcher(str);
        while (m.find()) {
     
            s += m.group().subSequence(0, 1);
        }
        num+=s;
        return num;
    }
    
    //取出数字
    public static String filterNumber(String number)
    {
     
        number = number.replaceAll("[^(0-9)]", "");
        return number;
    }
}

你可能感兴趣的:(java)