我的应用程序中有一个字段,用户可以输入hashtag。 我想验证他们的条目,并确保他们输入什么是合适的HashTag。 它可以在任何语言和它应该不是前面带#号。 我正在用JavaScript编写。用于匹配任何语言的HashTags的正则表达式
所以下面就是很好的例子:
- Abcde45454_fgfgfg(好,因为:只有字母,数字和_)
- 2014_is-的一年(好,因为:字母,数字,_和 - )
- בר_רפאלי(好,因为:只有字母和_)
- арбуз(好,因为:只有字母)
而且FOLL由于是坏的例子:
- 丹·布朗(坏,因为有一个空格)
- OMG !!!!! (不好,因为有!)
- בררפ@לי(坏,因为有@和空格)
我们有匹配只有-ZA-Z0-9一个正则表达式,我们需要添加语言支持等等我们改变它忽略空格,忘记忽略特殊字符,所以我在这里。
一些其他StackOverflow的例子我看到了,但对我没有工作:
[编辑]
- 新增的解释,为什么不好就是不好好不错
- 我不想要前面的#字符,但是如果我想在开头添加#,它应该是一个有效的标签
- 基本上我不想允许任何特殊字符,比如@ @#$ %^ & *()= +/[{]} ;:'“> <
不好的例子不包含'#'。那么究竟是什么你禁止的字符? – Leo 2014-12-07 13:17:45
编辑我的问题添加解释和一些更多的信息。 谢谢! – AlexD 2014-12-07 13:29:10
所以'#'前导是允许的,尽管你不喜欢,而其他地方的'#'是被禁止的,那是不是? – Leo 2014-12-07 13:34:41