js正则验证:支持中英文、数字、()、/、\、-和_,不能以()、/、\、-、_为首尾,2-50个字符
时间: 2023-09-09 21:11:35 浏览: 338
JS 验证密码 不能为空,必须含有数字、字母、特殊字符,长度在8-12位
可以使用如下的正则表达式来验证该要求:
```
/^(?![-/\\()_])[a-zA-Z0-9\u4e00-\u9fa5()\/\-\\_]{2,48}(?<![-/\\()_])$/
```
该正则表达式的含义如下:
- `^` 表示匹配字符串的开头,`(?![-/\\()_])` 表示负向前瞻,表示字符串不能以 `-/\\()_` 中的任意一个字符开头;
- `[a-zA-Z0-9\u4e00-\u9fa5()\/\-\\_]{2,48}` 表示匹配 2-48 个中英文、数字、()、/、\、- 和 _,其中 `\u4e00-\u9fa5` 表示匹配中文字符;
- `(?<![-/\\()_])` 表示负向后瞻,表示字符串不能以 `-/\\()_` 中的任意一个字符结尾;
- `$` 表示匹配字符串的结尾。
注意,由于 `\` 在 JavaScript 中是一个转义字符,所以在正则表达式中需要使用 `\\` 表示一个 `\`。因此,上面的正则表达式可以写成以下形式:
```
/^(?![-\\/()_])[a-zA-Z0-9\\u4e00-\\u9fa5()\\/-\\\\_]{2,48}(?<![-\\/()_])$/
```
阅读全文