正则表达式匹配没有空格和散列#字符的字符串

时间:2016-08-03 08:11:21

标签: regex

我需要验证文本框以避免用户输入空格或哈希标记#。截至目前,我尝试了正则表达式,并实现了仅限制空间。

案例1:正则表达式限制空格: ^\S+$ - 这是有效的

案例2:限制空格和#hash标签的正则表达式 - (\S+$)[!#]这不起作用

我需要限制用户输入空格和哈希标记#。

1 个答案:

答案 0 :(得分:3)

您需要将\S展开为[^\s],然后将#添加到其中:

^[^\s#]+$

请参阅regex demo

模式详情

  • ^ - 字符串锚的开始
  • [^\s#]+ - 除{(+否定字符类)空白([^...])以外的1个或多个(\s)个字符和#符号
  • $ - 字符串结束。