




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、正则表达式基本语法详解正则表达式是一种文本模式,包括普通字符(例如, a 到 z 之间的字母)和特殊字符(称 为“元字符” )。模式描述在搜索文本时要匹配的一个或多个字符串。1. 正则表达式基本语法两个特殊的符号A和$。他们的作用是分别指出一个字符串的开始和结束。例子如下:The:表示所有以The开始的字符串(There,The cat等);of despair$:表示所以以of despair结尾的字符串;Aabc$:表示开始和结尾都是 abc的字符串一一呵呵,只有abc自己了;notice :表示任何包含 notice 的字符串。象最后那个例子, 如果你不使用两个特殊字符, 你就在表示要查
2、找的串在被查找串的任意部 分你并不把它定位在某一个顶端。其它还有 * , +和?这三个符号, 表示一个或一序列字符重复出现的次数。 它们分别表示 “没 有或更多”,“一次或更多”还有“没有或一次” 。下面是几个例子:ab*:表示一个字符串有一个a后面跟着零个或若干个b。(a, ab, abbb,);ab+:表示一个字符串有一个a后面跟着至少一个b或者更多;ab?:表示一个字符串有一个a后面跟着零个或者一个b ;a?b+$ :表示在字符串的末尾有零个或一个 a 跟着一个或几个 b。你也可以使用范围,用大括号括起,用以表示重复次数的范围。ab2:表示一个字符串有一个a跟着2个b (abb);ab2
3、,:表示一个字符串有一个a跟着至少2个b ;ab3,5:表示一个字符串有一个a跟着3到5个b。请注意,你必须指定范围的下限(如:0,2而不是,2)。还有,你可能注意到了, *, +和?相当于0, , 1,和0,1。还有一个 | ,表示“或”操作:hi|hello:表示一个字符串里有hi或者hello;(b|cd)ef:表示bef或cdef;(a|b)*c :表示一串 ab 混合的字符串后面跟一个 c;.可以替代任何字符: a.0-9 :表示一个字符串有一个 a 后面跟着一个任意字符和一个数字;A3$:表示有任意三个字符的字符串(长度为3个字符);方括号表示某些字符允许在一个字符串中的某一特定位
4、置出现:ab:表示一个字符串有一个a或b(相当于a|b);a-d:表示一个字符串包含小写的a到d中的一个(相当于a|b|c|d 或者abed);Aa-zA-Z:表示一个以字母开头的字符串;0-9% :表示一个百分号前有一位的数字;,a-zA-Z0-9$ :表示一个字符串以一个逗号后面跟着一个字母或数字结束。你也可以在方括号里用表示不希望出现的字符,A应在方括号里的第一位。(如:%Aa-zA-Z%表示两个百分号中不应该出现字母) 。为了逐字表达,你必须在 A.$()|*+? 这些字符前加上转移字符 。请注意在方括号中,不需要转义字符。2. 正则表达式验证控制文本框的输入字符类型1. 只能输入数字
5、和英文的:2. 只能输入数字的:3 .只能输入全角的:4.只能输入汉字的:3. 正则表达式的应用实例通俗说明*/ 校验是否全由数字组成/人0-91,20$/A表示打头的字符要匹配紧跟 A后面的规则$ 表示打头的字符要匹配紧靠 $前面的规则 中的内容是可选字符集0-9 表示要求字符范围在 0-9 之间1,20表示数字字符串长度合法为 1 到 20,即为0-9中的字符出现次数的范围是 1 到20 次。/A 和 $/成对使用应该是表示要求整个字符串完全匹配定义的规则,而不是只匹配字符串 中的一个子串。*/ 校验登录名:只能输入 5-20 个以字母开头、可带数字、 “_”、“.”的字串/Aa-zA-Z
6、1(a-zA-Z0-9|._)4,19$/Aa-zA-Z1 表示第一个字符要求是字母。(a-zA-Z0-9|._)4,19 表示从第二位开始(因为它紧跟在上个表达式后面)的一个长度为4到 9 位的字符串,它要求是由大小写字母、数字或者特殊字符集 ._组成。*/ 校验用户姓名:只能输入 1-30 个以字母开头的字串/Aa-zA-Z1,30$/*/ 校验密码:只能输入 6-20 个字母、数字、下划线/伽)6,20$/w :用于匹配字母,数字或下划线字符*/ 校验普通电话、传真号码:可以“+”或数字开头,可含有“ -” 和 “ ”/A+0,1(d)1,3 ?(-?(d)| )1,12)+$/d :用
7、于匹配从 0 到 9 的数字;“?”元字符规定其前导对象必须在目标对象中连续出现零次或一次可以匹配的字符串如: +123 -999 999 ; +123-999 999 ;123 999 999 ;+123 999999 等*/ 校验 URL/Ahttps0,1:/.+$/或 /Ahttps0,1:/.1, n$/(表示 url 串的长度为 len gth( “https:/” ) +n ) / :表示字符“ /”。. 表示所有字符的集+ 等同于 1,,就是 1 到正无穷吧。*/ 校验纯中文字符 /Au4E00-u9FA5+$/u4E00-u9FA5 :估计是中文字符集的范围吧以上表达 式均在
8、 下面的 javascript 中测试通过 规则表达式 : ( 填写 / /之间的表达式 )校验字符串 : 4. 正則表達式應用Ad+$/ 非负整数(正整数+ 0)A0-9*1-90-9*$/ 正整数A(-d+)|(O+)$II 非正整数(负整数 + 0)人-0-9*1-90-9*$ II 负整数A-?d+$II 整数Ad+(.d+)?$ II非负浮点数(正浮点数 + 0) ”a(0-9+.0-9*1-90-9*)|(0-9*1-90-9*.0-9+)|(0-9*1-90-9*)$II 正浮点数A(-d+(.d+)?)|(O+(.O+)?)$II 非正浮点数(负浮点数 + 0)”a(-(0-9
9、+.0-9*1-90-9*)|(0-9*1-90-9*.0-9+)|(0-9*1-90-9*)$II 负浮点数A(-?d+)(.d+)?$ II 浮点数AA-Za-z+$ II 由 26 个英文字母组成的字符串 AA-Z+$II 由 26 个英文字母的大写组成的字符串Aa-z+$II由26个英文字母的小写组成的字符串AA-Za-zO-9+$ II由数字和26个英文字母组成的字符串 Aw+$ II由数字、26个英文字母或者下划线组成的字符串 Aw-+(.w-+)*w-+(.w-+)+$IIemail 地址Aa-zA-z+:II(w+(-w+)*)(.(w+(-w+)*)*(?S*)?$IIurl
10、IA(d2|d4)-(0(1-91)|(11|2)-(0-2(1-91)|(30|1)$III 年-月-日/A(0(1-91)|(11|2)/(0-2(1-91)|(30|1)/(d2|d4)$/II 月 I 日 I 年A(w-.+)(0-91,3.0-91,3.0-91,3.)|(w-+.)+)(a-zA-Z2,4|0-91,3)(?)$IIEmil(d+-)?(d4-?d7|d3-?d8|Ad7,8)(-d+)?II 电话号码A(d1,2|1dd|20-4d|250-5).(d1,2|1dd|20-4d|250-5).(d1,2|1dd|20-4d|250-5).(d1, 2|1dd|20
11、-4d|250-5)$ IIIP 地址A(0-9A-F2)(-0-9A-F2)5$ IIMAC 地址的正则表达式A-+?d+(.d+)?$II值类型正则表达式5. javascript 正则表达式检验II 校验是否全由数字组成 function isDigit(s)var patrn=IA0-91,20$I;if (!patrn.exec(s) return falsereturn trueII 校验登录名:只能输入 5-20 个以字母开头、可带数字、“_”、“.”的字串function isRegisterUserName(s)var patrn=IAa-zA-Z1(a-zA-Z0-9|._
12、)4,19$I;if (!patrn.exec(s) return falsereturn trueII 校验用户姓名:只能输入 1-30 个以字母开头的字串 function isTrueName(s)var patrn=IAa-zA-Z1,30$I;if (!exec(s) return falsereturn trueII 校验密码:只能输入 6-20 个字母、数字、下划线 function isPasswd(s)var patrn=IA(w)6,20$I;if (!patrn.exec(s) return falsereturn trueII 校验普通电话、传真号码:可 以 “ + ”
13、 开 头 , 除 数 字 外 , 可 含 有 “ - ” function isTel(s)IIvar patrn=IA+0,1(d)1,3?(-?(d)1,12)+$I;varpatrn=IA+0,1(d)1,3 ?(-?(d)| )1,12)+$I;if (!patrn.exec(s) return falsereturn trueII校验 手机号 码 : 必须 以数 字 开头 ,除数 字 外 ,可含 有“ -” function isMobil(s)var patrn=IA+0,1(d)1,3 ?(-?(d)| )1,12)+$I;if (!patrn.exec(s) return fa
14、lsereturn trueII校验 邮 政 编 码 function isPostalCode(s)IIvar patrn=IAa-zA-Z0-93,12$I;var patrn=IAa-zA-Z0-9 3,12$I;if (!patrn.exec(s) return falsereturn trueII 校验 搜 索关键 字 functionisSearch(s)varpatrn=/AF!#$%A &*()+=|:;,./?1人!$%人&()+=|:;,.?0,19$/;if (!patrn.exec(s) return falsereturn truefunction isIP(s) /
15、by zerglingvarpatrn=/A0-9.1,20$/;if(!patrn.exec(s)returnfalsereturntrue/* FUNCTION: isBetween* PARAMETERS: val AS any value* lo AS Lower limit to check* hi AS Higher limit to check* CALLS:NOTHING* RETURNS:TRUE if val is between lo and hi bothinclusive,otherwisefalse.*/function isBetween (val, lo, hi
16、) if (val hi) return(false); else return(true);*(isBetween(d,1, maxDays)false) return(false);else return(true);/*FUNCTION: isDate checks a valid date* PARAMETERS:theStr AS String*CALLS: isBetween, isInt* RETURNS: TRUE if theStr is a valid date otherwise false.* */function isDate (theStr) var the1st
17、= theStr.indexOf(-);var the2nd = theStr.lastIndexOf(-);if (the1st = the2nd) return(false); else var y = theStr.substring(0,the1st);var m = theStr.substring(the1st+1,the2nd);var d = theStr.substring(the2nd+1,theStr.length);var maxDays = 31;if (isInt(m)=false | isInt(d)=false | isInt(y)=false) return(
18、false); else if (y.length 0) maxDays = 28;else if (y % 100 = 0 & y % 400 0) maxDays = 28;else maxDays = 29;if* FUNCTION: isEuDate checks a valid date in British format* PARAMETERS: theStr AS String* CALLS:isBetween, isInt* RETURNS:TRUE if theStr is a valid date otherwise false.*/function isEuDate(th
19、eStr) if (isBetween(theStr.length, 8,10)= false) return(false); else var the1st = theStr.indexOf(/);var the2nd = theStr.lastIndexOf(/);if (the1st = the2nd) return(false);else var m = theStr.substring(the1st+1,the2nd);vard =theStr.substring(0,the1st);var y = theStr.substring(the2nd+1,theStr.length);v
20、ar maxDays = 31;if (isInt(m)=false | isInt(d)=false | isInt(y)=false) return(false); else if (length 0) maxDays = 28;else if (y % 100 = 0 & y % 400 0) maxDays = 28;else maxDays = 29;if(isBetween(d,1, maxDays)false) return(false);else return(true); /*FUNCTION: Compare Date! Which is thelatest!* PARAM
21、ETERS:*RETURNS: TRUE iflessDate,moreDate AS String* CALLS: isDate,isBetween* lessDateDate2)*FUNCTION isEmpty checks if the parameter is empty or null*PARAMETERstr AS return(false);return(true);/*String*/functionisEmpty (str) if (str=null)|(str.length=0)return true;elsereturn(false);/*FUNCTION: isInt
22、* PARAMETER:theStr AS String * RETURNS:TRUE if thepassed parameteris an integer, otherwiseFALSE* CALLS:isDigit*/function isInt (theStr) var flag = true;if (isEmpty(theStr) flag=false; else for (var i=0; i decLen) return(false);else if (!isInt(intPart)| !isInt(decPart) return (false);else if (isEmpty
23、(decPart)return(false);elsereturn(true);/*FUNCTION: isEmail* PARAMETER:String (Email Address)* RETURNS: TRUEif the String is a valid Email address* FALSE if the passed string is not a valid Email Address* EMAILFORMAT: AnyNameEmailServer e.g; webmaster* sign can appear only once in the emailaddress.*
24、 instance*isEmail (theStr) var atIndex = theStr.indexOf();var dotIndex = atIndex);var flag = true;theSub = theStr.substring(0, dotIndex+1)if (atIndex theStr.lastIndexOf()|(dotIndex Document to opennew windowhite - Height of the new windowwide - Width of the new windowbars - 1-Scroll bars = YES 0-Scr
25、oll Bars = NOresize - 1-Resizable = YES 0-Resizable = NO* CALLS:NONE* RETURNS: New window=elsein the*/function newWindow (doc, hite, wide, bars, resize) var winNew=_blank;var opt=toolbar=0,location=0,directories=0,status=0,menubar=0,;opt+=(scrollbars=+bars+,);opt +=(resizable=+resize+,);opt+=(width=+wide+,);opt+=(height=+hite);winHandle
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 二手大王缝纫机销售合同6篇
- 出租房租房合同范本
- 2025年习惯性流产治疗保育合同7篇
- 工业工程技术人员劳动合同5篇
- 人工挖桩孔劳务承包合同7篇
- 云南省保山市文山州2023-2024学年高二物理上学期期末质量监测试题含解析
- 2025届安徽省蚌埠六校联考高考模拟试题(解析版)
- 2025至2030年中国电解式臭氧发生器市场调查研究报告
- 2025年消防安全知识培训考试题库基础常识篇案例分析试题
- 2025年消防安全培训试题:消防应急演练组织与协调能力测试题
- 重庆大轰炸优秀课件
- 专题01《水银花开的夜晚》 高考语文二轮复习
- 外贸客户报价单中英文格式模板
- 中药学中药性味归经功效归纳
- 专业技术人员职务聘任书
- JJF 1338-2012相控阵超声探伤仪校准规范
- GB/T 13911-1992金属镀覆和化学处理表示方法
- GB/T 13452.2-2008色漆和清漆漆膜厚度的测定
- 【泉州南音传承与发展研究(论文7200字)】
- 《马克思主义发展史》第五章 马克思列宁主义在苏联的发展及曲折
- 现代汉语词汇学精选课件
评论
0/150
提交评论