java中去掉字符串中的特殊符号(杂质),解决方案

场景:
        在实际业务中,常常会遇到需要把某个字符串中的特殊符号全部去掉,只保留数字、大小写字母、汉字等

1、解决案例代码

    /**
     * <p>去掉字符串中的杂质(特殊符号)</p>
     * <p>只保留数字、大小写字母和汉字</p>
     */
    public static String impurityStr(String str) {
        if (StrUtil.isBlank(str)) {
            return null;
        }
        return str
                .chars()
                .filter(Character::isLetterOrDigit)
                .collect(StringBuilder::new, StringBuilder::appendCodePoint, StringBuilder::append)
                .toString();
    }

2、验证

        String noHaveImpurityStr = CommonUtil.impurityStr("~`我是!@#$%^&*()_+-=,中./'文;*这是数字、0123456789 | 字母.aABbcd·");
        System.out.println("去除后结果:" + noHaveImpurityStr);

结果输出:
去除后结果:我是中文这是数字0123456789字母aABbcd

小结:
(1)从结果输出可以看到,字符串中几乎包含了所有特殊符号,最后都能去除干净,只保留了数字、大小写字母、汉字

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值