java-过滤器,过滤字符串/判断是小数,保留两位,非小数,保留整数

来源:有的时候,需要过滤字符串的格式,但是一个一个去寻找,又麻烦,我自己就记录一点点,以后再碰到就更新

 

    public static String htmlFilter(String htmlStr) {
        String regEx_script = "<script[^>]*?>[\\s\\S]*?<\\/script>"; //定义script的正则表达式
        String regEx_style = "<style[^>]*?>[\\s\\S]*?<\\/style>"; //定义style的正则表达式
//        String regEx_html = "<[^>]+>"; //定义HTML标签的正则表达式
        String regEx_html = "(\\r\\n|\\r|\\n|\\n\\r)";
        Pattern p_script = Pattern.compile(regEx_script, Pattern.CASE_INSENSITIVE);
        Matcher m_script = p_script.matcher(htmlStr);
        htmlStr = m_script.replaceAll(""); //过滤script标签

        Pattern p_style = Pattern.compile(regEx_style, Pattern.CASE_INSENSITIVE);
        Matcher m_style = p_style.matcher(htmlStr);
        htmlStr = m_style.replaceAll(""); //过滤style标签

        Pattern p_html = Pattern.compile(regEx_html, Pattern.CASE_INSENSITIVE);
        Matcher m_html = p_html.matcher(htmlStr);
        htmlStr = m_html.replaceAll(""); //过滤html标签
        return htmlStr;
    }

这是 新加的:1、过滤回车和换行符

newString = myString.replaceAll("(\r\n|\r|\n|\n\r)", "<br>");

    /*
     * 如果是小数,保留两位,非小数,保留整数
     * @param number
     */
    public static String getDoubleString(double number) {
        String numberStr = "";
        if (((int) number * 1000) == (int) (number * 1000)) {
            //如果是一个整数
            numberStr = String.valueOf((int) number);
        } else {
            DecimalFormat df = new DecimalFormat("######0.00");
            numberStr = df.format(number);
        }
        return numberStr;
    }

这个判断字符串,是否有汉字,或者金额字符串处理的方法:

  Pattern pattern = Pattern.compile("^-?\\d+(\\.\\d+)?[万][人][民][币]");

  boolean blo1 = pattern1.matcher(amount).matches();

这个是判断是否全为数字,支持小数点:0.123 此类形式

    /**
     * 判断一个字符串是否是数字。
     *
     * @param string
     * @return
     */
    public static boolean isNumber(String string) {
        if (string == null)
            return false;
        Pattern pattern = Pattern.compile("^-?\\d+(\\.\\d+)?$");
        return pattern.matcher(string).matches();
    }

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值