如何精确判断一个字符串是否是base64编码过的

2025-03-13 00:20:12
推荐回答(2个)
回答1:

单纯从字符串的角度:

1.字符数是4的倍数

2.字符的范围是定的(base64字符表)

貌似底层也无法判定是否一定为base64的编码串

也可以通过正则表达式判断:
正则表达式:
^([A-Za-z0-9+/]{4})*([A-Za-z0-9+/]{4}|[A-Za-z0-9+/]{3}=|[A-Za-z0-9+/]{2}==)$

回答2:

/^([A-Za-z0-9+/]{4})*([A-Za-z0-9+/]{4}|[A-Za-z0-9+/]{3}(=)?|[A-Za-z0-9+/]{2}(==)?|[A-Za-z0-9+/]{1}(===)?)$/