如何检查字符串是否为base64编码我想解码base64编码的字符串,然后将其存储在我的数据库中。如果输入不是base64编码,我需要抛出一个错误。如何检查字符串是否为base64编码?
3 回答
墨色风雨
TA贡献1853条经验 获得超6个赞
您可以使用以下正则表达式来检查字符串是否为base64编码:
^([A-Za-z0-9+/]{4})*([A-Za-z0-9+/]{3}=|[A-Za-z0-9+/]{2}==)?$
在base64编码中,字符集是[A-Z, a-z, 0-9, and + /]
。如果剩余长度小于4,则字符串将填充'='
字符。
^([A-Za-z0-9+/]{4})*
表示字符串以0或更多base64组开头。
([A-Za-z0-9+/]{4}|[A-Za-z0-9+/]{3}=|[A-Za-z0-9+/]{2}==)$
表示字符串以三种形式之一结束:[A-Za-z0-9+/]{4}
,[A-Za-z0-9+/]{3}=
或[A-Za-z0-9+/]{2}==
。
元芳怎么了
TA贡献1798条经验 获得超7个赞
如果您使用的是Java,那么您实际上可以使用commons-codec库
import org.apache.commons.codec.binary.Base64;String stringToBeChecked = "...";boolean isBase64 = Base64.isArrayByteBase64(stringToBeChecked.getBytes());
添加回答
举报
0/150
提交
取消