防止输入字段模式中的前导空格

时间:2016-10-25 22:02:19

标签: html regex forms validation input

问题

我试图通过使用模式来阻止使用空格或制表符在输入中使用前导空格,但是我遇到了这个正则表达式^(?!\s)([a-zA-Z0-9 _.'"()!?&@]){1,}$的问题,我认为这是因为我可能因为引号而没有正确逃脱?

最终,我想确保输入至少包含一个字符,但这些字符在查询开始时都不会占用空格。

输入无效

_这是一个查询
__这是一个查询

有效输入

这是一个很好的输入

ABC

123

的index.html

  <form action="{% url 'master_search' %}" method="GET">
    <i class="fa fa-search search-icon-drilldown" aria-hidden="true"></i>
    <input type="text" class="nav__search--agency form-control inline" name="q" value="" placeholder="Search by employee name" pattern="^(?!\s)([a-zA-Z0-9 _.'"()!?&@]){1,}$" required>
  </form>

3 个答案:

答案 0 :(得分:1)

嗯。如果您想允许以字母或数字开头的所有内容,

pattern="^[a-zA-Z1-9].*"

应该做的工作

答案 1 :(得分:0)

你也可以通过这样做来否定范围 ^[^\s]+.*$ 这将匹配一个非白色空间的起始字符的行。

答案 2 :(得分:-1)

这是一个模式,用于输入html中的类型,但是对于名称验证,我一直在分析模式 pattern="^(?!\s)[a-zA-Z ]{1,}$"我在输入类型html表单中使用标题(title="Request Format:Not valid numeric val & special character. Only Character")作为请求的模式表单type="name"