티스토리 뷰

문자열이 Base64 인지 확인하는 방법 (정규표현식)

해당 문자열이 Base64인지 java 에서 확인하는 방법을 공유해봅니다.

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

public class Base64Test {

    public static void main(String[] args) {
        String text = "안녕하세요";

        String encodedText = Base64.getEncoder().encodeToString(text.getBytes());
        System.out.println("인코딩 : " + encodedText);

        Pattern pattern = Pattern.compile("^([A-Za-z0-9+/]{4})*([A-Za-z0-9+/]{3}=|[A-Za-z0-9+/]{2}==)?$");
        Matcher matcher = pattern.matcher(encodedText);
        if (matcher.find()) {
            System.out.println("Base64 인코딩 된겁니다!!");
        }

        Matcher notEncoding = pattern.matcher(text);
        if (notEncoding.find()) {
            System.out.println("Base64 인코딩이 아닙니다!!!");
        }
    }

}

위와 같은 방법으로 해당 문자열이 Base64 인코딩된 문자열인지 확인할 수 있습니다.

Reference

How to check whether a string is Base64 encoded or not

'Dev > Java' 카테고리의 다른 글

MapStruct 를 사용하여 Entity Dto 쉽게 변환하기  (0) 2021.05.18
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/11   »
1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
글 보관함