从此字符串返回的可能字符的范围是什么?
function base64url_encode($data)
{
return rtrim(strtr(base64_encode($data), '+/', '-_'), '=');
}
我猜是[a-z0-9-_]
答案 0 :(得分:41)
Base64编码的字符串可能包含字符a-z A-Z 0-9 + / =
。
您正在删除右侧填充=
并将+
替换为-
,将/
替换为_
。
所以在你的情况下,是的,可能的字符是a-z A-Z 0-9 - _
答案 1 :(得分:33)
返回的可能字符范围是:
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_-]
。