当前位置: 首页 > 知识库问答 >
问题:

只有一个空格或一个hypen的字母数字的正则表达式

昌和悦
2023-03-14

我需要一个正则表达式,它需要满足以下要求:-

    null

例如有效数据

  • W1A 1HQ
  • 1234-456
  • IT-12345
  • 12345

到目前为止,我已经尝试了下面的表达式,但它不能正常工作

(^[a-zA-Z0-9][^\s\-].*[^\s\-][a-zA-Z0-9]){0,8}

编辑
此处发布的解决方案不接受字符串中的一个空格和一个hypen的组合。请提供一个表达式,将支持所有的要求在一起的组合。

共有1个答案

柯波娃
2023-03-14

您可以使用regex/^(?=.{0,10}$)[a-z0-9]+(?:[\s-][a-z0-9]+)?$/i

演示:

$('#input').on('input', function() {
  $('#res').text(this.value.match(/^(?=.{0,10}$)[a-z0-9]+(?:[\s-][a-z0-9]+)?$/i) ? 'Valid' : 'Not Valid')
})
html lang-html prettyprint-override"><script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<input id="input">
<div id="res"></div>
 类似资料: