从此字符串返回的可能字符的范围是多少?
function base64url_encode($data)
{
return rtrim(strtr(base64_encode($data), '+/', '-_'), '=');
}
我的猜测是[a-z0-9-_]
Base64 编码的字符串可能包含字符a-z A-Z 0-9 + / =
。
您要删除右填充=
,并将+
替换为 -
,/
替换为 _
。
因此,在您的情况下,可能的字符是a-z A-Z 0-9 - _
更多信息
返回的可能字符范围为:
-
A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T, U, V, W, X, Y, Z
-
a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s, t, u, v, w, x, y, z
-
0, 1, 2, 3, 4, 5, 6, 7, 8, 9
-
-
(减号)和_
(下划线)
在您的正则表达式风格中,这将是[a-zA-Z0-9_-]
.