正则表达式:是一个字符一个字符的验证,通过量词验证字符串;

1、什么是RegExp?RegExp是正则表达式的缩写。RegExp 对象用于规定在文本中检索的内容。

2、定义RegExp:var +变量名=new RegExp();

3、RegExp 对象有 3 个方法:

1)test()检索字符串中的指定值,返回值是true或false.

var p1=new Reg("e");

document.write(Reg.test("welcome to China!"));

2)exec()

var p1=new Reg("e");

document.write(Reg.exec("welcome to China!"));

3) compile()

var p1=new Reg("e");

document.write(Reg.compile("welcome to China!"));

4、修饰符

1)i  执行对大小写不敏感的匹配

2)g 执行全局匹配

3)m 执行多行匹配

5、方括号(用于查找某个范围内的字符)

1)[abc]  查找方括号之间的任何字符

2)[^abc] 查找任何不在方括号之间的字符

3)[0-9]  查找任何0-9之间的数字

4)[a-z] 查找任何小写a-z之间的字符

5)[A-Z]查找任何大写A-Z之间的字符

6)[A-z] 查找任何大写A-小写z之间的字符

7)[adgk] 查找给定集合内的任何字符

8)[^adgk]查找给定集合外的任何字符

9)(red|biue|green)查找任何给定的选项

6、元字符

1)\w:查找单词字符

2)\W:查找非单词字符

3)\d:查找数字

4)\D:查找非数字字符

7、 量词

n+匹配任何包含至少一个 n 的字符串。

n*匹配任何包含零个或多个 n 的字符串。

n?匹配任何包含零个或一个 n 的字符串。

n{X}匹配包含 X 个 n 的序列的字符串。

n{X,Y}匹配包含 X 或 Y 个 n 的序列的字符串。

n{X,}匹配包含至少 X 个 n 的序列的字符串。

n$匹配任何结尾为 n 的字符串。

^n匹配任何开头为 n 的字符串。

?=n匹配任何其后紧接指定字符串 n 的字符串。

?!n匹配任何其后没有紧接指定字符串 n 的字符串。

【练习题1】判断输入身份证格式是否正确

<body>
<label>请输入身份证号:</label>
<input name="" type="text" id="shenfen"/>
<input name="" type="submit" id="textfi" value="提交1" onclick="test()"/><!--提交按钮,触发函数-->

</body>

</html>
<!--判断身份证是否输入正确-->

 <script>
function test()
{
var reg=new RegExp(/^[-]{}[-|X]$/);<!--正则表达式的格式:以/^开头,以$/结尾,数字、字母范围用中括号-->
var text=document.getElementById("shenfen").value;<!--输入文本框的字符串的id跟文本框的id对应-->
//判断地区是否合法(用if...else)
if(reg.test(text))
{
alert("输入正确")
}
else
{
alert("输入错误");
}
}
</script>

验证身份证输入是否正确

效果图:

【练习题2】判断输入的邮箱格式是否正确

 <body>

 <label>请输入您的邮箱:</label>
<input name="" type="text" id="youxiang"/>
<input name="" type="submit" value="提交2" onclick="y()" /> </body>
</html> <script>
function y()
{
var yx=new RegExp(/^[-|A-z|_]{,}@[A-z|-]{,}.(com|cn|net|org|cc)$/);
var shuru=document.getElementById("youxiang").value; <!--定义变量,调用的是整个function,,必须把变量写在function内-->
if(yx.test(shuru))<!--test正则表达式的方法-->
{
alert("zhengque");
}
else
{
alert("cuowu");
}
} </script>

验证邮箱格式是否正确

效果图:

12-01Js对象##正则表达式##的更多相关文章

  1. Javascript数组,String对象,Math对象,Date对象,正则表达式

    标题栏的滚动<html><head><title>山西众创金融</title></head>function init(){ //1.拿到标 ...

  2. 2015.3.12 C#运用正则表达式点滴

    Regex reg = new Regex(@"\w{1,}@\w{1,}\.(com)?(net)?"); //匹配(1个或多个)(字母或数字或下滑线)@ (1个或多个)(字母或 ...

  3. Day 12 字符串和正则表达式

    使用正则表达式 正则表达式相关知识 在编写处理字符串的程序或网页时,经常会有查找符合某些复杂规则的字符串的需要,正则表达式就是用于描述这些规则的工具,换句话说正则表达式是一种工具,它定义了字符串的匹配 ...

  4. python学习(12)使用正则表达式

    1.正则表达式知识 符号 解释 示例 说明 . 匹配任意字符 b.t 可以匹配bat / but / b#t / b1t等 \w 匹配字母/数字/下划线 b\wt 可以匹配bat / b1t / b_ ...

  5. 12、Java 正则表达式

    简介 用来描述或者匹配一系列符合某个语句规则的字符串 正则表达式定义了字符串的模式. 正则表达式可以用来搜索.编辑或处理文本. 正则表达式并不仅限于某一种语言,但是在每种语言中有细微的差别. 一.正则 ...

  6. JavaScript对象(正则表达式,Date对象,function对象 arguments对象)

    好用的技术教程:http://www.w3school.com.cn/index.html 1:正则表达式 正则表达式通常用于验证表单 定义语法为 / / 2:Date对象 var now = new ...

  7. asp的RegExp对象正则表达式功能用法

    RegExp对象提供简单的正则表达式支持功能. RegExp对象的用法: 以下为引用的内容: Function RegExpTest(patrn, strng) Dim regEx, Match, M ...

  8. obj-c编程12:复制对象

    好吧,上一篇我怎么也没想到会写那么多字那么少的代码,希望这一篇不会如此哦. 言归正传,对象的复制分为浅复制和深复制,前者只是复制对象的引用,当原对象的内容发生变化时,复制对象的内容也会发生变化,毕竟他 ...

  9. Python基础语法07--面向对象+正则表达式

    Python 面向对象 Python从设计之初就已经是一门面向对象的语言,正因为如此,在Python中创建一个类和对象是很容易的.本章节我们将详细介绍Python的面向对象编程. 如果你以前没有接触过 ...

随机推荐

  1. shell学习之杂项

    ? 表示任意一个字符. > 重写 >> 追加 &> 将错误信息一并写入 Ctrl+Z 暂停 fg 恢复 jobs 查看所有已暂停任务 bg 丢到后台 env 查看系统环 ...

  2. Spring Boot入门——邮件发送

    1.引入依赖 <!-- mail依赖 --> <dependency> <groupId>org.springframework.boot</groupId& ...

  3. 导入别人struts2项目可能要做的改变

    然后: 接着 再接着 最后

  4. DataGrid的组成论述(WPF)

    DataGrid:它标示是一个整体概念,是个大容器,包含Row的感念 Column:是表格的组成成分(表格是由列组成的),它包括Header和Cell的概念

  5. css3——transition属性和opacity属性

    [transition-duration] 是一个css3属性,规定完成过度效果需要花费的时间(一秒或毫秒计).语法:transition-duration: time;time :    规定完成过 ...

  6. CodeForces 444C 线段树

    想分块想了很久一点思路都没有,结果一看都是写的线段树= = ...完全忘记了还有线段树这种操作 题意:给一个数组,一种操作是改变l到r为c,还有一种操作是查询l到r的总和差 线段树记得+lazy标记 ...

  7. 关于const_cast转换

    第一次看到const_cast转换,将const指针转换成普通的指针.很自然的想到:什么时候用const_cast?为什么要用它?这根const不是相互矛盾吗? (const_cast<ICef ...

  8. NodeJs学习之API篇

    学习nodeJS的API在对于使用nodeJS来进行编程的是十分重要的,所以首先就要去学习看看,相关的node的模块,来看一看相关的内容和可用性. 正文篇: nodeJS的API学习之路.(这里我们将 ...

  9. Collection集合存储自定义对象练习

    public class Student { private String name; private int age; public Student() { super(); } public St ...

  10. 使用手势对UIImageView进行缩放、旋转和移动(转)

    原文地址:http://blog.csdn.net/crazy_frog/article/details/8664108 // 添加所有的手势 - (void) addGestureRecognize ...