Regex允许单词字符、括号、空格和连字符
Regex to allow word characters, parentheses, spaces and hyphen
我试图验证javascript中的正则表达式字符串。字符串可以有:
- 字字符
- 括号
- 连字符(-)
- 3 ~ 50长度
这是我的尝试:
function validate(value, regex) {
return value.toString().match(regex);
}
validate(someString, '^['w's/-/(/)]{3,50}$');
像这样编写验证器
function validate(value, re) {
return re.test(value.toString());
}
使用这个正则表达式
/^['w() -]{3,50}$/
一些测试
// spaces
validate("hello world yay spaces", /^['w() -]{3,50}$/);
true
// too short
validate("ab", /^['w() -]{3,50}$/);
false
// too long
validate("this is just too long we need it to be shorter than this, ok?", /^['w() -]{3,50}$/);
false
// invalid characters
validate("you're not allowed to use crazy $ymbols", /^['w() -]{3,50}$/);
false
// parentheses are ok
validate("(but you can use parentheses)", /^['w() -]{3,50}$/);
true
// and hyphens too
validate("- and hyphens too", /^['w() -]{3,50}$/);
true
相关文章:
- Javascript正则表达式,返回连字符和空格后面的数字
- 在 3 位和 6 位数字后插入空格或连字符,前缀为 +91
- 允许数字、空格、加号、连字符和括号的正则表达式
- 用连字符替换字符串中的空格
- 在 javascript 中查找非单词、非空格和非连字符
- 将空格和空格替换为逗号,并在 JS 中使用连字符
- java-script 中的正则表达式,仅接受 0-9 连字符和字母表中的数字,没有空格
- 正在尝试检索所有以空格、连字符、撇号或字符串开头的大写前导字符
- Javascript/jQuery:拆分camelcase字符串并添加连字符而不是空格
- Javascript字符串删除空格和连字符
- Regex捕获空格和特殊字符,除了单词中的连字符
- 逗号和空格分隔的数字和连字符分隔的字符串正则表达式
- 在Javascript IF语句中使用空格/连字符
- Regex允许单词字符、括号、空格和连字符
- 如何在正则表达式中只允许一个连字符(-)、一个空格()和一个撇号(')
- Regex for Should由8到20个数字字符组成,包括空格和一个连字符,并且连字符不能是第一个或最后一个字符
- 从字符串中删除空格、连字符和括号
- Javascript验证允许在名称中使用空格、连字符和外字符
- JavaScript 正则表达式由连字符和空格拆分
- 使用实时验证脚本 - 除 _(下划线)以外的特殊字符 - (连字符).(点)和空格