如何使用js正则表达式校验输入是否为以下并且都校验通过: 1、-----BEGIN RSA PRIVATE KEY----- 2、-----BEGIN EC PRIVATE KEY----- 3、-----BEGIN PRIVATE KEY-----
时间: 2023-10-05 20:07:20 浏览: 47
你可以使用正则表达式来校验输入是否为指定格式的私钥。下面是一个示例的 JavaScript 代码:
```javascript
const privateKeyRegex = /^(-----BEGIN (RSA|EC|PRIVATE) KEY-----\n)(([A-Za-z0-9+/=]\n)+)(-----END (RSA|EC|PRIVATE) KEY-----)$/;
function validatePrivateKey(input) {
return privateKeyRegex.test(input);
}
// 测试样例
console.log(validatePrivateKey("-----BEGIN RSA PRIVATE KEY-----\nABCDEF1234\nGHIJKL5678\n-----END RSA PRIVATE KEY-----")); // true
console.log(validatePrivateKey("-----BEGIN EC PRIVATE KEY-----\nABCDEF1234\nGHIJKL5678\n-----END EC PRIVATE KEY-----")); // true
console.log(validatePrivateKey("-----BEGIN PRIVATE KEY-----\nABCDEF1234\nGHIJKL5678\n-----END PRIVATE KEY-----")); // true
console.log(validatePrivateKey("invalid private key")); // false
```
这段代码中,`privateKeyRegex` 是一个正则表达式,用来匹配指定格式的私钥。`validatePrivateKey` 函数接受一个参数 `input`,并返回一个布尔值表示是否校验通过。