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

import org.apache.commons.lang.StringUtils;

/**
 * 判断字符串是否在base64编码范围内
 */
public class MatchBase64 {
    
    public static final String UTF8_BOM = "\uFEFF";
    
    public static void main(String[] args) {
        String plaintext = "5rih5a6JSOeahOWNmuWuou+8muS6uumXtOS4jeWAvOW+lwpodHRwczovL2Jsb2cuY3Nkbi5uZXQvRF9DX0hhbw==";
        
        //删除BOM字符
         if (plaintext.startsWith(UTF8_BOM)) {
             plaintext = plaintext.substring(1);
            }
         
         if ( StringUtils.isEmpty(plaintext) ){
             System.out.println("False:Is empty");
             return;
         }
         
        String regex = "[A-Za-z0-9,/,=,+]+";
        Pattern p = Pattern.compile(regex);
        Matcher m = p.matcher(plaintext);
        
        if ( ! m.matches()) {
            System.out.println("False:Don't match");
            return;
        }
        
        System.out.println("True:matching");
    }
    
}

判断字符串是否在base64编码范围内相关推荐

  1. python3 验证字符串是否为Base64编码的方法

    Base64 encode 说明 1.标准base64只有64个字符(英文大小写.数字和+./)以及用作后缀等号: 2.base64是把3个字节变成4个可打印字符,所以base64编码后的字符串一定能 ...

  2. 如何判断字符串所用何种加密编码

    base64.base32.base16 区别: 1.Base64编码是使用64个可打印ASCII字符(A-Z.a-z.0-9.+./)将任意字节序列数据编码成ASCII字符串,另有"=&q ...

  3. 如何判断字符串已经被url编码_如何判断回文数?不要再将整数转为字符串来解决这个问题了...

    判断一个整数是否是回文数变成字符串判断其实很简单,但是效率方面很差.那么你能不将整数转为字符串来解决这个问题吗?下面我给大家介绍一下如何做. 什么是回文数 判断一个整数是否是回文数.回文数是指正序(从 ...

  4. 现代密码学—密码学基本编码实践 16进制向base64编码转换 等长16进制字符串异或 找出密钥并破解密文 python

    实验地点:E楼III区503 实验时间:11.17 一.实验室名称:攻防实验室 二.实验项目名称:密码学基本编码实践 三.实验学时:6学时 四.实验原理: Base64是网络上最常见的用于传输8Bit ...

  5. golang中base64编码_MySQL中如何将字符串转为base64编码?

    点击蓝字关注我们!每天获取最新的编程小知识! 源 / php中文网      源 / www.php.cn 在MySQL中,TO_BASE64()函数将字符串转换为以base-64编码的字符串并返回结 ...

  6. MySQL怎么存base64编码_MySQL中如何将字符串转为base64编码?

    在MySQL中,TO_BASE64()函数将字符串转换为以base-64编码的字符串并返回结果.(相关推荐:<MySQL教程>) 语法TO_BASE64(str) 其中str是需要编码的字 ...

  7. Base64编码的原理及实现(源码)

    Base64编码在邮件中最为常见,呵呵,因为我最近就是在做邮箱报警,SMTP验证就是Base64编码用户名和密码进行验证的,并且附件也是要转换成base64编码的数据,然后再发送的.该编码使用64个明 ...

  8. Web项目实战 | 购物系统v2.0 | 开发记录(五)使用base64编码实现头像修改 | 用户个人信息修改 | JQuery动态提示

    文章目录 以往记录 一.运行环境 二.实现头像修改 三.用户个人信息修改 四.Bug & DeBug 以往记录 Web项目实战 | 购物系统v2.0 | 开发记录(一)需求分析 | 技术选型 ...

  9. ​Base64编码知识详解 ​

    在我们进行前端开发时,针对项目优化,常会提到一条:针对较小图片,合理使用Base64字符串替换内嵌,可以减少页面http请求. 并且还会特别强调下,必须是小图片,大小不要超过多少KB,等等. 那么,B ...

最新文章

  1. CPU步进号(版本号)
  2. Thrift在Windows及Linux平台下的安装和使用示例
  3. 003 Rabbitmq中交换机的类型
  4. ECMAScript 6的解构赋值 ( destructuring assignment)
  5. Andrew Ng's Deep Learning学习记录
  6. openssl不是内部或外部命令_OpenSSL新架构蓝图
  7. 在Linux下下载RPM包
  8. android中多态的应用_动态代理原理及在 Android 中的应用
  9. 由查找算法工程的类图分析组合模式
  10. 百度云文章的链接地址抓取工具
  11. selector多路复用_python selectors模块实现 IO多路复用机制的上传下载
  12. ELK下Kibana和Elasticsearch之间相互TLS身份验证
  13. GB28181协议实现系列之----SDK Demo发布(7)
  14. nvme固件升级 linux,Intel NVME SSD 固件升级步骤
  15. 信鸽推送(Android和iOS):详细流程+问题解决
  16. [010] 百度地图API之根据经纬度查询地址信息(Android)
  17. Centos7 进入单用户模式,修复系统
  18. webSpider----request
  19. RN+SDK套壳轻松解决苹果审核被拒3.2.1问题、2.1大礼包问题【最新上架技术】
  20. 文件用手机拍照片打印时,打印出来总是有黑阴影,如何去掉黑色阴影打印清晰的图片

热门文章

  1. springboot整合Hystrix 熔断器
  2. markdown 数学公式 任意符号 存在符号
  3. BUUCTF VoIP
  4. 前端改变this指向的方法有哪些?如何判断this指向?
  5. jieba分词词性标注含义
  6. 滚动条如何设置样式和滚动条悬浮显示与隐藏
  7. freemarker导出word、word转pdf,带附件、图片等比缩放
  8. html狙击瞄准特效,如何给视频加特效:制作电影中狙击场景效果 望远镜效果视频...
  9. JSON.stringfy()详解
  10. 解析dump的几种方式