正则表达式没有字母和至少1个数字

时间:2017-08-02 17:08:15

标签: javascript regex

我想知道我找不到任何这种情况的正则表达式。我不能做一个所以任何帮助将不胜感激。我需要一个匹配以下标准的正则表达式。

  1. 严格禁止信件
  2. 至少必须是1个号码
  3. 允许所有特殊字符

2 个答案:

答案 0 :(得分:-2)

试试这个,它满足您的所有要求:

/^[^a-z]*[0-9]+[^a-z]*$/xi

如果您想尝试使用Regex,请尝试Regex101

答案 1 :(得分:-3)

var reg = /^-?\d+\.?\d*$/;可能会为你工作。

function submited(){
  var input = document.getElementById( 'input' ),
      output = document.getElementById( 'output' ),
      value = input.value,
      reg = /^-?\d+\.?\d*$/;
      
  output.innerHTML = reg.test( value );
}

var button = document.querySelector( 'button' );
button.addEventListener( 'click', submited );
html,
body {
  height: 100%;
  margin: 0;
}
html {
  font-family: sans-serif;
}
body {
  display: flex;
}
section {
  margin: auto;
  padding: 2rem;
  background-color: #eee;
  border-radius: 2rem;
}
p {
  color: #777;
}
input,
button {
  border-radius: 0.5rem;
  border: 0;
  padding: 0.5rem;
}
button {
  margin-left: 0.5rem;
  cursor: pointer;
}
button:hover {
  background-color: #ccc;
}
#output {
  color: #000;
}
<section>
  <p>True only for numbers. False for letters. Test below.</p>
  <input id="input" type="text">
  <button>submit</button>
  <p>result: <span id="output"></span></p>
</section>