JavaScript(三) 正则表达式 以及实现的功能
RegExp 是正则表达式的缩写。
定义RegExp正则表达式
RegExp 对象用于存储检索模式。
通过 new 关键词来定义 RegExp 对象。以下代码定义了名为 p 的 RegExp 对象,其模式是 "e":
var p=new RegExp("e");
当您使用该 RegExp 对象在一个字符串中检索时,将寻找的是字符 "e"。
用符号来描述书写规则:/中间写正则表达式/
^ 匹配开头 /^ve/ 以ve开头的
$ 匹配结尾 /ve$/ 以ve结尾的
\d 一个任意的数字
\w 一个任意的数字或字母
\s 任意字符串
{n} 把左边的表达式重复n遍
{m,n} 把左边的表达式重复至少m遍,至多n遍
{m, } 把左边的表达式重复至少m遍,至多不限
+ 左边的表达式,至少出现一次,至多不限,相当于{1, }
* 左边的表达式,至少出现0次,至多不限,相当于{0, }
? 左边的表达式,至少出现0次,至多出现1次,相当于{0,1}
[a,b,c] 只能取方括号中内容之一
[a-z]或[1-9] 在范围中取其一
| 代表或者
() 优先级
var p=new RegExp("e"); 后面括号里的引号里写入正则表达式.
_________________________________________________我是华丽的分割线_____________________________________________________
RegExp 对象的方法
RegExp 对象有 3 个方法:test()、exec() 以及 compile()。
Test()
test()方法检索字符串中的指定值。返回值是 true 或 false。
看看要比对的字符串有木有规定的,有就true 没有就false

引号里面不含"e" 返回false

包含e 反回true
exec()
exec() 方法检索字符串中的指定值。返回值是被找到的值。如果没有发现匹配,则返回 null。
看看要比对的字符串有木有规定的,有返回规定的,没有返回null

让他去找e,有就返回e

让他去找w, 没有找不到返回null
compile()
compile() 方法用于改变 RegExp。
compile() 既可以改变检索模式,也可以添加或删除第二个参数。

由于字符串中存在 "e",而没有 "d". 返回 truefalse
_________________________________________________我是华丽的分割线_____________________________________________________
正则表达式判断是否是身份证号
<body>
<script>
function func()
{
var ceshi=new RegExp(/^[0-9]{17}[0-9|X]$/);
var q=document.getElementById("a").value;
if(ceshi.test(guo))
{
alert("正确");
}
else
{
alert("错误");
}
}
</script> 请输入身份证号
<input id="a" type="text" /><input name="sa" type="submit" onclick="func()" value="提交"/>
</body>
判断是否是邮箱
<script>
function you()
{
var youxiang=new RegExp("([a-z0-9_\.-]+)@([\da-z\.-]+)\.([a-z\.]{2,6})");
var q=document.getElementById("a").value;
if(youxiang.test(guo))
{
alert("正确");
}
else
{
alert("错误");
}
} </script>
请输入邮箱
<input id="a" type="text" /><input name="sa" type="submit" onclick="you()" value="提交"/>

JavaScript(三) 正则表达式 以及实现的功能的更多相关文章
- 详解Javascript中正则表达式的使用
正则表达式用来处理字符串特别好用,在JavaScript中能用到正则表达式的地方有很多,本文对正则表达式基础知识和Javascript中正则表达式的使用做一个总结. 第一部分简单列举了正则表达式在Ja ...
- javascript中正则表达式的基础语法
× 目录 [1]定义 [2]特点 [3]元字符[4]转义字符[5]字符组[6]量词[7]括号[8]选择[9]断言[10]模式[11]优先级[12]局限性 前面的话 正则表达式在人们的印象中可能是一堆无 ...
- 如何使用JavaScript和正则表达式进行数据验证
利用客户端JavaScript的优势,JavaScript中的正则表达式可以简化数据验证的工作,下面与大家分享下如何使用JavaScript和正则表达式进行数据验证,感兴趣的朋友可以参考下哈 数据验证 ...
- 谈谈 JavaScript 的正则表达式
一.背景 最近在做 CMS 系统中不同身份登录用户的权限管理,涉及到对 api 路径的识别去判断是否放行.以前对正则表达式都是敬而远之,要用到的话都是直接复制粘贴现成网上的表达式,看也看不太懂,借这次 ...
- javascript类型系统——正则表达式RegExp类型
× 目录 [1]对象 [2]实例属性 [3]静态属性[4]实例方法 前面的话 前面已经介绍过javascript中正则表达式的基础语法.javascript的RegExp类表示正则表达式,String ...
- JavaScript正则表达式详解(二)JavaScript中正则表达式函数详解
二.JavaScript中正则表达式函数详解(exec, test, match, replace, search, split) 1.使用正则表达式的方法去匹配查找字符串 1.1. exec方法详解 ...
- 深入浅出的javascript的正则表达式学习教程
深入浅出的javascript的正则表达式学习教程 阅读目录 了解正则表达式的方法 了解正则中的普通字符 了解正则中的方括号[]的含义 理解javascript中的元字符 RegExp特殊字符中的需要 ...
- JavaScript验证正则表达式大全
JavaScript验证正则表达式大全,搜集最全的JavaScript验证正则表达式,开始查看吧,这里的都是正则表达式的例子,具体和函数结合的使用方法,还请查看下篇文章<JavaScript使用 ...
- JavaScript常用正则表达式与应用(一)
JavaScript的String类和RegExp对象类都定义了相关方法使用正则表达式进行模式匹配,本文将以连载方式介绍JavaScript常用正则表达式与相关应用,欢迎交流 本节是连载一,首先介绍J ...
随机推荐
- (转)EasyUI-datagrid-自动合并单元格
1.目标 1.1表格初始化完成后,已经自动合并好需要合并的行: 1.2当点击字段排序后,重新进行合并: 2.实现 2.1 引入插件 /** * author ____′↘夏悸 * create dat ...
- 全文检索解决方案(lucene工具类以及sphinx相关资料)
介绍两种全文检索的技术. 1. lucene+ 中文分词(IK) 关于lucene的原理,在这里可以得到很好的学习. http://www.blogjava.net/zhyiwww/archive/ ...
- 用.htaccess文件实现URL重写
注:第一部分来自 http://www.cnblogs.com/wangkongming/archive/2012/11/13/2768251.html 这位博主的个人网站简洁 还有诗歌 ...
- Linux编程环境
yum -y install gcc gcc-c++ libtool-ltdl libtool-ltdl-devel openssl openssl-devel curl curl-devel lib ...
- cookie (储存在用户本地终端上的数据)
Cookie,有时也用其复数形式 Cookies,指某些网站为了辨别用户身份.进行 session 跟踪而储存在用户本地终端上的数据(通常经过加密).定义于 RFC2109 和 2965 中的都已废弃 ...
- C#进阶目录
一.Sql语句的性能优化 二.Quartz.NET的介绍 三.Log4.Net的介绍 四.Topshelf的介绍 五.Git的使用 六.IEnumerable接口迭代原理 七.Lambada表达式的演 ...
- linux 下安装 mysql5.7.16安装
1.groupadd mysql ## 添加一个mysql组 2.useradd -r -g mysql mysql ## 添加一个用户 3.解压缩下载的包,tar -xzvf /da ...
- angularJS实践过程中出现的问题总结
同名服务 在一次项目里,之前是同事写的.我有一次在异步获取服务器上的数据时,习惯把api地址写在一个服务Store里,但是程序总是返回Store.api.get()里的get is undefined ...
- mysql 5.7 的安装配置与 navicat premium for mysql 11 的破解使用
再安装mysql5.7 或以上的版本出现了一些问题,现在总结下,希望能给初入学习mysql的人一下帮助,大牛就不要来嘲笑小弟我了 首先准备如下: 1.下载mysql 5.7,下载地址:https:// ...
- Swift 学习中的一点体会,不断更新中。。。
随着Xcode 8的发布,swift 3.0终于来了.又有一大批api名字发生了变化.但是感觉3.0之后的变化应该会小些,因此再重新仔细学习一下. 1. 关于swift引入的Computed Prop ...