浅谈js中test()函数在正则中的使用
内容摘要
test() 方法用于检测一个字符串是否匹配某个模式.
返回一个 Boolean 值,它指出在被查找的字符串中是否匹配给出的正则表达式。
regexp.test(str)
参数
regexp 必选项。包含正
返回一个 Boolean 值,它指出在被查找的字符串中是否匹配给出的正则表达式。
regexp.test(str)
参数
regexp 必选项。包含正
文章正文
test() 方法用于检测一个字符串是否匹配某个模式.
返回一个 Boolean 值,它指出在被查找的字符串中是否匹配给出的正则表达式。
regexp.test(str)
参数
regexp 必选项。包含正则表达式模式或可用标志的正则表达式对象。
str 必选项。要在其上测试查找的字符串。
说明
test 方法检查字符串是否与给出的正则表达式模式相匹配,如果是则返回 true,否则就返回 false。
每个正则表达式都有一个 lastIndex 属性,用于记录上一次匹配结束的位置.
var re = /^[1-9]{4,10}$/gi; var str = "123456"; alert(re.test(str)); //返回true
// 执行上面的 test 之后我们可以弹出
alert(re.lastIndex); // 弹出6
即表示上一次在第6个字符之后结束
那么下一次再调用 test 的时候, 就会从第6个字符之后继续搜索
解决办法,将正则表达式的 lastIndex 属性设置为0
具体代码如下
<script type="text/javascript"> var re = /^[1-9]{4,10}$/gi; var str = "123456"; alert(re.test(str)); //返回true re.lastIndex=0; alert(re.test(str)); //返回true </script>
JavaScript表单验证email邮箱,判断一个输入量是否为邮箱email,通过正则表达式实现。
//检查email邮箱
function check(){ var email=document.getElementById("email").value; var isemail=/^[a-z]([a-z0-9]*[-_]?[a-z0-9]+)*@([a-z0-9]*[-_]?[a-z0-9]+)+[\.][a-z]{2,3}([\.][a-z]{2})?$/i; if (email=="") { alert("请输入您的邮箱!"); return false; } if (email.length>25){ alert("长度太长"); return false } if (!isemail.test(email)){ alert("不是邮箱"); return false; } }
以上这篇浅谈js中test()函数在正则中的使用就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持phpstudy。
代码注释