JavaScript学习笔记整理(六)

RegExp对象:js中专门疯转一条正则表达式,提供使用正则表达式的常用API
在使用正则表达式时,必须创建RegExp
创建正则表达式:var RegExp=/正则表达式/ig;
RegExp的方法
test()检索字符串中指定的值,返回true或者false;影响lastIndex属性值
API:var boolean=regExp.text("被检查的字符串");     //返回true或者false;
验证和查找的区别:验证要求完整匹配,查找要求部分匹配
var regExp=/\w+@\w+([-]\w+)*(\.\w+)+/;
var regExp=  /^\w[-\w.+]*@([A-Za-z0-9][-A-Za-z0-9]+\.)+[A-Za-z]{2,14}$/;  
//验证邮箱    这个开头添加了^和最后添加了$可以匹配dhwe@[email protected]是错误的
var regExp=  /\w[-\w.+]*@([A-Za-z0-9][-A-Za-z0-9]+\.)+[A-Za-z]{2,14}/; 
//验证邮箱,这个开头没有加^和最后没有加$,如果用户输入dhwe@[email protected]是可以通过的
正则表达式 贪婪模式:.+.* 默认先匹配整个字符串,在缩小
正则表达式 懒惰模式:(.+?) (.*?),从第一个字符开始,向后扩展范围
匹配超链接的正则表达式:
凡是正则表达式里面的斜线都变成双斜线  程序运行时,单斜线和双斜线是一样的
while(true){
var input=prompt("输入邮箱");
if(regExp.test(input)){
document.write("可以使用");
break;
}else{alert("格式错误")};
}
查找:exec:查找关键字的位置,又能找到关键字的内容,indexOf不支持正则,search支持正则,只能match所以内容,但是找不到位置
需求:找到静静和明明的位置 
   regExp.exec("被查找的内容");
查找:仅判断有没有,或者仅查找位置:indexOf()  ,支持正则表达式secrch()
仅找所有的关键字内容:match()
即找位置,又找内容:exec()
    var str="明明喜欢我,却不告诉我,别理我,我想静静,静静是谁?"
    var regExp=/明明|静静/g;   //两个元素在全局查找
    var arr=[];
    while((arr=regExp.exec(str))!=null){
    document.write("在位置"+arr.index+"发现:"+arr[0]);
    }
从正则表达式匹配内容中,取出一部分:RegExp();
案例,在一个字符串中找出网址,并找出定位的网址内容
var txt='

你可能感兴趣的:(前端开发)