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 普通字符 字母.数字.汉字.下划线.以及后边章节中没有特殊定义的标点符号,都是"普通字符".表达式中的普通字符,在匹配一个字符串的时候,匹配与之同样的 ...
随机推荐
- Mac OS X 更新JAMF域控配置
在终端执行以下命令即可更新jamf域控配置属性 sudo jamf mcx # 应用被管理的配置信息 sudo jamf policy -trigger # 检查触发器策略 sudo jamf rec ...
- 并发系列2-大白话聊聊Java并发面试问题之Java 8如何优化CAS性能?【石杉的架构笔记】
- Bzoj2721 [Violet]樱花(筛法)
题面 题解 首先化一下式子 $$ \frac 1x+\frac 1y=\frac 1{n!} \Rightarrow \frac {x+y}{xy}=\frac 1{n!} \Rightarrow ( ...
- Luogu P3391 【模板】文艺平衡树(FHQ-Treap)
题意 给出一个长为$n$序列$[1,2,...,n]$,$m$次操作,每次指定一段区间$[l,r]$,将这段区间翻转,求最终序列 题解 虽然标题是$Splay$,但是我要用$FHQ\ Treap$,考 ...
- HZAU 1207 Candies(线段树区间查询 区间修改)
[题目链接]http://acm.hzau.edu.cn/problem.php?id=1207 [题意]给你一个字符串,然后两种操作:1,将区间L,R更新为A或者B,2,询问区间L,R最长的连续的B ...
- Linux命令之who
who [选项] … [FILE | ARG1 ARG2] 打印有关当前登录用户的信息. (1).选项 -a,--all 同-b –d –login –p –r –t –T -u -b,--boot ...
- CSS页面排版的一点笔记
CSS页面排版 字体族 字体族的值是一个字体备选列表,多个字体使用英文逗号隔开,字体名称如果有空格则需要引号. font-family: "Georgia Pro", " ...
- http://download.eclipse.org/technology/m2e/releases install error
Can you try running Eclipse as Admin and try this again?. Let me know how that goes. what is the upd ...
- Python开发基础-Day4-布尔运算、集合
布尔值 True 真 False 假 所有的数据类型都自带布尔值,数据只有在0,None和空的时候为False. print(bool()) print(bool()) print(bool('')) ...
- 【分块】计蒜客17120 2017 ACM-ICPC 亚洲区(西安赛区)网络赛 G. Xor
题意:给一棵树,每个点有权值.q次询问a,b,k,问你从a点到b点,每次跳距离k,权值的异或和? 预处理每个点往其根节点的路径上隔1~sqrt(n)的距离的异或和,然后把询问拆成a->lca(a ...