Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/gwt/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何在没有填充的情况下RegExp此Base64编码的256位数字_Javascript_Regex - Fatal编程技术网

Javascript 如何在没有填充的情况下RegExp此Base64编码的256位数字

Javascript 如何在没有填充的情况下RegExp此Base64编码的256位数字,javascript,regex,Javascript,Regex,我正在尝试在客户端和服务器上对Base64编码的256位数字进行此验证,而不使用=填充 ^[A-Za-z0-9+/]{42}[AEIMQUYcgkosw048]$ 这是我的代码,它没有按预期工作,因为任何值似乎都返回true: $.fn.validateKey = function() { var re = /^[A-Za-z0-9+/]{42}[AEIMQUYcgkosw048]$/ var re = new RegExp($(this).val()); return

我正在尝试在客户端和服务器上对Base64编码的256位数字进行此验证,而不使用
=
填充

^[A-Za-z0-9+/]{42}[AEIMQUYcgkosw048]$
这是我的代码,它没有按预期工作,因为任何值似乎都返回true:

$.fn.validateKey = function() {
    var re = /^[A-Za-z0-9+/]{42}[AEIMQUYcgkosw048]$/
    var re = new RegExp($(this).val());
    return re;
};

如何在不使用javascript填充的情况下验证基本64编码的256位签名密钥?

您正在返回一个
RegExp
对象。您希望使用输入字符串返回其计算结果

$.fn.validateKey = function() {
    var re = /^[A-Za-z0-9+/]{42}[AEIMQUYcgkosw048]$/;
    return re.test($(this).val());
};
在评论中指出了一些有趣的事情,
/
不需要在正则表达式中转义(至少在我的浏览器中)


我相信这是因为我是角色课的一员。

非常感谢alex!你最后的评论是什么意思?我使用这个答案来验证256位数字的正确格式Base64编码。我还遗漏了什么陷阱吗?提前非常感谢@格雷库斯,我开枪了。如果它是编码数据的子集(仅限一个数字),您应该是对的。也有可能我在度假,忘记了很多编程。我听到了!再次感谢!字符组内的斜杠是否不需要转义?通常,delimeter解析发送给正则表达式引擎的字符串。我可以想象它将这个
/^[A-Za-z0-9+/
视为正则表达式,它应该抛出一个不匹配的
[
错误。但是,这是JS,所以我不确定。