我继续这个问题。它有帮助和工作。regex for special character。我的正则表达式是:
var characterReg = /^\s*[a-zA-Z0-9,\s]+\s*$/;
它只接受a-zA-z0-9
。但是我想要一个也支持下划线(_)和das( - )的正则表达式。我无法修改正则表达式模式,因为它不在我的脑海里.Plz有人建议一个我的情况正确的模式。
答案 0 :(得分:1)
var characterReg = /^\s*[a-zA-Z0-9_,\s-]+\s*$/;
-
是一个特殊字符,如果你在两个字符之间写入,则表示范围。所以你可以逃避它(\\-
)或者只是放在[]
内容的末尾
实际上,您可以写\\w
而不是a-zA-Z0-9_
。\\w
是一个单词字符(字母,数字和下划线)。
最后\s*
也是不必要的,因为方括号中有一个空格,而[\\w,\s-]+
将完全匹配此foo bar-123
我认为这更好:var characterReg = /^\s*[\\w,\s-]+$/;