2017-08-09 27 views
1

我的要求返回truefalse的基础上检查是否一个字符串是一个字,只有字母在里面。如何在javascript中返回布尔值true/false匹配单个字母字符串的字符串?

我尝试以下操作:

<button onclick="myFunction()">Try it</button> 
<p id="demo"></p> 
<script> 
function myFunction(){ 
document.getElementById("demo").innerHTML = /[a-zA-Z]+/.test("Hello123"); 
} 
</script> 

不过这回我true,而不是预期的false

我在错误的方式使用regexObject.test(String)

回答

2

你需要检查字符串开始(^),端($),并且只包含字母:

console.log("Hello123", /^[a-zA-Z]+$/.test("Hello123")); 
 

 
console.log("Hello", /^[a-zA-Z]+$/.test("Hello"));

+0

感谢Ori的,我明白了! –

2

你需要一个开始符号^和结束标志$为以及检查整个字符串。

document.getElementById("demo").innerHTML = /^[a-zA-Z]+$/.test("Hello123");
<p id="demo"></p>

你可以缩短与敏感标志的正则表达式。

document.getElementById("demo").innerHTML = /^[a-z]+$/i.test("Hello");
<p id="demo"></p>

+0

谢谢妮娜。 我在怀疑'^'和'''是什么,所以没有它进行测试。 –

相关问题