javascript——正則表達式
正則表達式(RegExp对象):主要用于表单验证
1、创建正則表達式:
(1)、var ret = /pattern/; pattern是内容。能够是正則表達式的内容,能够是字符或是其它的内容
(2)、var rag = new RegExp("pattern");括号内能够是双引號或者单引號
2、正則表達式的exec方法:
reg.exec(str); ,reg为创建的正則表達式,str为要运行正則表達式的目标字符串
如:var reg = /test/; //此处假设是e,则输出e。假设是so,则输出为null
var str = "testString";
var result = reg.exec(str);
alert(result);//输出test,当没有与正則表達式相匹配的内容时。输出null
3、c{n}:c表示字母,n表示个数
如:c{1}表示匹配一个c
c{2}表示匹配两个连续的c
4、c{m,n}:匹配m到n个c,m小于等于n
如:c{3,4}:匹配连续的3个或4个c。
假设多于4个,仍然仅仅匹配4个
5、c{n,}:表示最少有n个c,最多则不限个数
6、* 表示0次或多次。c*等同于c{0}
7、 +表示1次或多次,c+等同于c{1,}
8、 ?表示0次或1次,c?等同于c{0,1}
3~8的正則表達式都是贪心模式。仅仅要在合法的情况下,会尽量多的匹配字符
非贪心模式:正则尽量少地匹配字符,在数字的符号后面。组成的形式如:{n,}?
, *? , +? , ?? , {m,n}?
9、^表示仅仅能匹配字符串的开头
10、 $表示仅仅能匹配字符串的结尾
11、‘.’匹配字符串中除了换行符\n之外的全部字符
12、“ | ”正則表達式中的或,二选一,如b|c表示,匹配b或c
13、字符集合[abc]表示a或者b或者c的随意一个字符
[a-z]:小写字母;[A-Z]大写字母;[0-9]数字
14、不区分大写和小写:reg = /b|c$/i,即在正則表達式后面加一个i
15、反字符串:p^在正則表達式開始部分的时候表示开头的意思,比如/^c/表示开头是c;可是在字符集合中,它表示的是类似“非“的意思,比如[^abc]就表示不能是a。b或者c中的不论什么一个。
18、对电子邮件的验证:
var myreg = /^([a-zA-Z0-9]+[_|\_|\.]?)*[a-zA-Z0-9]+@([a-zA-Z0-9]+[_|\_|\.]?
)*[a-zA-Z0-9]+\.[a-zA-Z]{2,3}$/;
19、对于手机号码的验证(提供了两种方法)
var mobile=/^((13[0-9]{1})|159|153)+\d{8}$/;
var mobile1=/^(13+\d{9})|(159+\d{8})|(153+\d{8})$/;
javascript——正則表達式的更多相关文章
- javascript 正則表達式补充
定义 JavaScript种正則表達式有两种定义方式,定义一个匹配类似 <%XXX%> 的字符串 1. 构造函数 var reg=new RegExp('<%[^%>]+%&g ...
- JavaScript正則表達式知识汇总
Js 正則表達式知识汇总 正則表達式: 1.什么是RegExp?RegExp是正則表達式的缩写.RegExp 对象用于规定在文本中检索的内容. 2.定义RegExp:var +变量名=new RegE ...
- javascript正則表達式 "\b"问题
preface 昨晚在看<javascript权威指南>后.看见作者自己封装一个兼容全部浏览器的山寨HTML5新API classLIst类.自己想了想认为自己也要去玩一下.可是能力还是有 ...
- DOM笔记(十):JavaScript正則表達式
一.RegExp ECMAScript通过RegExp类型类支持正則表達式,语法和Perl类似: var exp = /pattern/flags; patternb部分是不论什么简单的或复杂的正則表 ...
- JavaScript 正則表達式
一.简单介绍 1.什么是正則表達式 正則表達式本身就是一种语言,这在其他语言是通用的. 正則表達式(regular expression)描写叙述了一种字符串匹配的模式,能够用来检查一个串是否含有某种 ...
- 经常使用的正則表達式归纳—JavaScript正則表達式
来源:http://www.ido321.com/856.html 1.正则优先级 首先看一下正則表達式的优先级,下表从最高优先级到最低优先级列出各种正則表達式操作符的优先权顺序: 2.经常使用的正則 ...
- javascript正則表達式
定义一个正則表達式 能够用字面量 var regex = /xyz/; var regex = /xyz/i; 也能够用构造函数 var regex = new RegExp('xyz'); var ...
- JavaScript使用正則表達式
2.0 简单介绍 正則表達式是能够用来查找与给定模式匹配的文本的搜索模式.比如,在上一章中,我们在一个较长的字符串中查找子字符串Cookbook: var testValue = "This ...
- js正則表達式语法
1. 正則表達式规则 1.1 普通字符 字母.数字.汉字.下划线.以及后边章节中没有特殊定义的标点符号,都是"普通字符".表达式中的普通字符,在匹配一个字符串的时候,匹配与之同样的 ...
随机推荐
- electron-builder中NSIS相关配置
electron-builder中NSIS相关配置 相比较于electron-packager打包,使用electron-builder打包使得包体积更小.在electron-builder中,对于N ...
- 前端读者 | Javascript设计模式理论与实战:状态模式
本文来自 @狼狼的蓝胖子:链接:http://luopq.com/2015/11/25/design-pattern-state/ 在软件开发中,很大部分时候就是操作数据,而不同数据下展示的结果我们将 ...
- web前端-《手机移动端WEB资源整合》——meta标签篇
前端网页meta元素可提供有关页面的元信息(meta-information),比如针对搜索引擎和更新频度的描述和关键词.meta标签的作用有:搜索引擎优化(SEO),定义页面使用语言,自动刷新并指向 ...
- HDU 5114 扩展欧几里得
题目大意:给你两个球的坐标 他们都往(1, 1)这个方向以相同的速度走,问你他们在哪个位置碰撞. 思路:这种题目需要把x方向和y方向分开来算周期,两个不同周期需要用扩展欧几里得来求第一次相遇. #in ...
- 35.Spark系统运行内幕机制循环流程
一:TaskScheduler原理解密 1, DAGScheduler在提交TaskSet给底层调度器的时候是面向接口TaskScheduler的,这符合面向对象中依赖抽象而不依赖的原则,带来底层资 ...
- react native项目增加devtools工具
第一步:安装react devtools工具 在当前项目中打开命令行,添加react devtools工具,因为运行的工具有九十几M,下载时需要时间,请耐心等待 yarn add react-devt ...
- JavaScript Output
JS can "display" data in different ways: (1)Writing into an alert box, using window.alert( ...
- ReentrantLock和ReentrantReadWriteLock对比
本文系作者原创,转载请注明:https://www.cnblogs.com/yanfei1819/p/10314533.html ReentrantLock 一.简介 ReentrantLock重入锁 ...
- mysql查询优化以及面试小结
mysql面试小结: 1.mysql的基本架构 2.mysql的索引 btree+的原理 3.mysql的索引优化 4.mysql的sql查询优化 慢查询日志 Show prodile 全局查询日志 ...
- 【数据结构】The Falling Leaves(6-10)
[UVA699]The Falling Leaves 算法入门经典第6章例题6-10(P159) 题目大意:有一颗二叉树,求水平位置的和. 试题分析:乱搞就可以过,将树根节点的pos记为0,向左-1, ...