正则表达式

来源:互联网 发布:淘宝最优类目查询 编辑:程序博客网 时间:2024/05/22 07:45





正则表达式



1.正则表达式
他是描述字符模式的对象,主要用于表单验证
一.构造方式
1)普通方式声明正则表达式 var reg=/表达式/附加参数
varreg =/white/i;
附加参数作用:i表示忽略大小写,g表示全局


2)使用构造函数声明正则表达式 var reg=new RegExp('表达式/附加参数');
var reg=new RegExp('white');

例子
varform= document.getElementById('form').onsubmit= function() {
//提交监听事件
//普通方式声明正则表达式 var reg=/表达式/附加参数;附加参数作用:i表示忽略大小写,g表示全局
//不加g表示第一个元素
varreg= /white/i;
//使用构造函数声明正则表达式 var reg=new RegExp('表达式/附加参数');
// var reg=new RegExp('white');

//验证输入框内容是否匹配
vara = document.getElementById('a').value;
if(reg.test(a)) {
//只要包含正则表达式的内容--white就通过
alert('验证通过');
}else {
alert('验证失败');
}
return false;
}

二.RegExp对象
RegExp的方法
1)test:检索字符串中指定的值,返回true或false

2)exce:在字符串中执行匹配搜索,返回结果数组


例子
<script>
var str = "you are a boy";
var reg = new RegExp('o', 'g');
//匹配正则返回正则(console.log是由控制台打印)

// lastIndex搜索的字符下标开始位置。这句话表示从第四个字母开始,正常从第一个开始lastIndex=0;
reg.lastIndex=3;
console.log(reg.exec(str));
console.log(reg.exec(str));

</script>

3)match方法,字符串匹配正则表达式,返回的结果是一个数组

4) search方法匹配到的是字母的下标位置,如果没有该怎么返回-1

例子
<script>

var str='hello world';
var reg=/o/ig;
//match方法,字符串匹配正则表达式,返回的结果是一个数组
// console.log(str.match(reg));

// search方法匹配到的是字母的下标位置,如果没有该怎么返回-1
console.log(str.search(reg));


</script>

RegExp的常用符号



例子
验证邮政编码(6位数)
/^\d{6}$/

验证年龄在1·120之间
var reg=/^(1[0-1]|[1-9])?\d$|^120$|/


//用户名字母开头4~16位
var reg=/^[a-zA-Z][a-zA-Z0-9]{3,15}$/


RegExp对象的属性
global:全局模式,应用于所有字符串
ignoreCase:执行对大小写不敏感的匹配
multine:多行匹配模式
原创粉丝点击