文字列がBase64でエンコードされているかどうかを確認する方法 質問する

文字列がBase64でエンコードされているかどうかを確認する方法 質問する

Base64 でエンコードされた文字列をデコードして、データベースに保存したいです。入力が Base64 でエンコードされていない場合は、エラーをスローする必要があります。

文字列が Base64 でエンコードされているかどうかを確認するにはどうすればよいですか?

ベストアンサー1

次の正規表現を使用して、文字列が有効な 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}=または の3 つの形式のいずれかで終わることを意味します[A-Za-z0-9+/]{2}==

おすすめ記事