需要正则表达式以允许最多3个特殊字符
Need regular expression to allow maximum of 3 special character
我需要一个满足以下要求的正则表达式。
- 应接受长度在0到50个字符之间的字母数字
- 应接受除","之外的所有特殊字符
- 应接受最少0个、最多3个特殊字符
尝试过这个,但没有按预期工作。
^[a-z's]{0,50}[.'-']*[a-z's]{0,50}[.'-']*$
如果有人做对了,请告诉我。
好吧,你可以写一些可怕的正则表达式,这将是不可能读取或维护的,或者只写代码,说明规则是什么:
function validate(str) {
var not_too_long = str.length <= 50,
has_no_dots = !/'./.test(str),
not_too_many_specials = (str.match(/[^'w's]/g) || []).length <= 3;
return not_too_long && has_no_dots && not_too_many_specials;
}
根据您对"特殊字符"的定义进行适当调整。
相关文章:
- 如何显示字符串中最多 200 个字符
- 最好有一个大画布还是最多 100 个动态生成的小画布
- JavaScript-拖动图像-最多3个
- 将select2限制为最多6个选项
- 将动态表单元素限制为最多10个记录
- 限制“;文本字段“;以magento形式只接受数字和最多10个数字
- 如何使用 JavaScript 正则表达式允许字符串中最多 3 个空格
- 如何从另一个长字符串创建最多 12 个字符的加密字符串
- Javascript,数组成员的所有可能总和(最多 4 个)
- 需要正则表达式以允许最多3个特殊字符
- 从javascript中的列表中选择最多x个项目
- 字符串匹配 angularjs/javascript 最多 2 个字符
- 选中最多三个复选框并禁用其他复选框
- Mongodb推送到数组,但保留最多3个项目的数组
- 如何限制最多1个文件上传在jQuery-File-Upload从后端在PHP
- 根据之前的下拉选择动态填充最多3个下拉列表
- RegEx允许任何字符,最多255个字符作为输入标记
- 如果数字不是双精度值,则无法显示最多两个十进制值的双精度类型值
- 使用javascript或jquery检查最多3个复选框
- 正则表达式:最少 13 个字符,13 个字符以内,最多 3 个字符