1排出行字符组;
作用:规定某个位置不允许出现的字符;
比如: [^...]方括号中不能出现的字符;
注意;[^]不能排除空字符;
2字符串简记法;
作用是:方便他们的的使用;
\d =[0-9]
\D=[^0-9]
\w=[0-9a-zA-Z_]
\W=[^0-9a-zA-Z_]
\s=匹配空白符(回车,换行,制表,空格)
\S=非匹配空白符(回车,换行,制表,空格)
3特殊的简记fa
. 好可以匹配除换行符的所以字符
\.和[.] 匹配点好本身
3量词部分:
作用:限定之前字符出现的次数
* 号表示之前的字符可以出现0次到无穷次.
+ 表示之前字符至少需要出现1次
? 号表示之前的字符只能出现1次;
区间连词;
*={0,1}
+={1,}
?={0,1}
量词的局限;
如果要规定一个字符串出现的次数,必须使用括号()在括号后面添加
量词
4括号的用途
作用表示某个位置出现的字符串;
形式;
(...|....)
(...|....|...)
5锚点;
作用;用来规定匹配的位置
^ 匹配一行的开头
$ 匹配一行的末尾
\A 匹配 整个字符串的开头
\Z 匹配整个字符串的末尾
6环视
锚点对位置的判断不够灵活
作用:应用子表达式对位置进行灵活判断;
形式;
(?=...) 肯定顺序环视
(?!...) 否定顺序环视
(?<=...) 肯定逆序环视
(?<!...) 否定逆序环视
注意是事项;
环视结构仅用于做布尔判断.并不保存在整个表达是的匹配结果之中
逆序环视结构对子表达式有限制 (.net没有限制)
/*-----------------------------------------------------------------------------*/
常用的正则表达式
只能输入数字:"^[0-9]*$"。
只能输入n位的数字:"^\d{n}$"。
只能输入至少n位的数字:"^\d{n,}$"。
只能输入m~n位的数字:。"^\d{m,n}$"
只能输入零和非零开头的数字:"^(0|[1-9][0-9]*)$"。
只能输入有两位小数的正实数:"^[0-9]+(.[0-9]{2})?$"。
只能输入有1~3位小数的正实数:"^[0-9]+(.[0-9]{1,3})?$"。
只能输入非零的正整数:"^\+?[1-9][0-9]*$"。
只能输入非零的负整数:"^\-[1-9][]0-9"*$。
只能输入长度为3的字符:"^.{3}$"。
只能输入由26个英文字母组成的字符串:"^[A-Za-z]+$"。
只能输入由26个大写英文字母组成的字符串:"^[A-Z]+$"。
只能输入由26个小写英文字母组成的字符串:"^[a-z]+$"。
只能输入由数字和26个英文字母组成的字符串:"^[A-Za-z0-9]+$"。
只能输入由数字、26个英文字母或者下划线组成的字符串:"^\w+$"。
验证用户密码:"^[a-zA-Z]\w{5,17}$"正确格式为:以字母开头,长度在6~18之间,只能包含字符、数字和下划线。
验证是否含有^%&’,;=?$\"等字符:"[^%&’,;=?$\x22]+"。
只能输入汉字:"^[\u4e00-\u9fa5]{0,}$"
验证Email地址:"^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$"。
验证InternetURL:"^http://([\w-]+\.)+[\w-]+(/[\w-./?%&=]*)?$"。
验证电话号码:"^(\(\d{3,4}-)|\d{3.4}-)?\d{7,8}$"正确格式为:"XXX-XXXXXXX"、"XXXX-XXXXXXXX"、"XXX-XXXXXXX"、"XXX-XXXXXXXX"、"XXXXXXX"和"XXXXXXXX"。
验证身份证号(15位或18位数字):"^\d{15}|\d{18}$"。
验证一年的12个月:"^(0?[1-9]|1[0-2])$"正确格式为:"01"~"09"和"1"~"12"。
验证一个月的31天:"^((0?[1-9])|((1|2)[0-9])|30|31)$"正确格式为;"01"~"09"和"1"~"31"。
利用正则表达式限制网页表单里的文本框输入内容:
用正则表达式限制只能输入中文:onkeyup="value=value.replace(/[^\u4E00-\u9FA5]/g,’’)" onbeforepaste="clipboardData.setData(’text’,clipboardData.getData(’text’).replace(/[^\u4E00-\u9FA5]/g,’’))"
用正则表达式限制只能输入全角字符: onkeyup="value=value.replace(/[^\uFF00-\uFFFF]/g,’’)" onbeforepaste="clipboardData.setData(’text’,clipboardData.getData(’text’).replace(/[^\uFF00-\uFFFF]/g,’’))"
用正则表达式限制只能输入数字:onkeyup="value=value.replace(/[^\d]/g,’’) "onbeforepaste="clipboardData.setData(’text’,clipboardData.getData(’text’).replace(/[^\d]/g,’’))"
用正则表达式限制只能输入数字和英文:onkeyup="value=value.replace(/[\W]/g,’’) "onbeforepaste="clipboardData.setData(’text’,clipboardData.getData(’text’).replace(/[^\d]/g,’’))"
得用正则表达式从URL地址中提取文件名的javascript程序,如下结果为page1
以下是引用片段: s="http://www.9499.net/page1.htm" s=s.replace(/(.*\/){0,}([^\.]+).*/ig,"$2") alert(s) |
匹配双字节字符(包括汉字在内):[^\x00-\xff]
应用:计算字符串的长度(一个双字节字符长度计2,ASCII字符计1)
以下是引用片段: String.prototype.len=function(){return this.replace([^\x00-\xff]/g,"aa").length;} |
匹配空行的正则表达式:\n[\s| ]*\r
匹配HTML标记的正则表达式:/<(.*)>.*<\/\1>|<(.*) \/>/
匹配首尾空格的正则表达式:(^\s*)|(\s*$)
以下是引用片段: String.prototype.trim = function() { return this.replace(/(^\s*)|(\s*$)/g, ""); } |
利用正则表达式分解和转换IP地址:
下面是利用正则表达式匹配IP地址,并将IP地址转换成对应数值的Javascript程序:
以下是引用片段: function IP2V(ip) { re=/(\d+)\.(\d+)\.(\d+)\.(\d+)/g //匹配IP地址的正则表达式 if(re.test(ip)) { return RegExp.$1*Math.pow(255,3))+RegExp.$2*Math.pow(255,2))+RegExp.$3*255+RegExp.$4*1 } else { throw new Error("Not a valid IP address!") } } |
分享到:
相关推荐
这个“正则表达式资料大全压缩包”很可能包含了各种教程、示例、参考手册以及实战案例,旨在帮助用户全面深入地理解和掌握正则表达式。 正则表达式的核心概念包括: 1. **元字符**:如`.`, `*`, `+`, `?`, `{}`, `...
对于需要在实际项目中运用正则表达式的开发者来说,这些实例是非常有价值的参考资料。 #### 2.4 我爱正则表达式博客 这是一个专注于正则表达式教学的博客,内容覆盖了从基础到进阶的各种技巧和应用场景。对于想要...
5. **学习资源**:为了帮助用户深入理解正则式,工具可能还包含教程、参考资料和常见正则表达式模式库,方便用户随时查阅。 RegexBuddy.exe 是一个典型的正则表达式工具,它提供了上述功能,并且可能有以下特点: ...
"正则表达式资料完整版"这个压缩包文件很可能是为初学者或进阶者提供的一系列关于正则表达式的教育资源。 正则表达式的核心概念包括: 1. **基本字符**:这些是正则表达式的基本构建块,如字母、数字、空格等。 2. ...
### 正则表达式基础知识与...对于想要深入学习并掌握正则表达式技术的读者来说,本书无疑是一个非常有价值的参考资料。通过阅读本书,读者不仅可以学到理论知识,还能通过实践案例加深理解,提高解决实际问题的能力。
正则表达式(Regular Expression,简称regex)是用于匹配字符串的一种模式,广泛应用于文本处理、数据验证、搜索和替换等场景。在Python编程语言中,正则表达式提供了强大的文本处理能力,使得开发者能够高效地处理...
在这个“正则表达式资料的集合”中,我们很可能会找到一系列关于正则表达式的教程和相关资料,帮助我们深入理解和熟练运用这一技术。 1. **正则表达式基础** - **基本字符**:包括字母、数字、标点符号等,以及...
Java正则表达式是Java编程语言中用于处理字符串的强大工具,它允许程序员通过模式匹配来查找、替换或分割文本。正则表达式在各种场景下都有广泛应用,如数据验证、文本提取、日志分析等。Java中的正则表达式功能主要...
正则表达式是一种强大的文本处理工具,用于匹配、查找、替换和分析字符串模式。在编程领域,无论是C语言...这个"相当全的正则表达式资料"将是你学习道路上的重要资源,希望它能帮助你在正则表达式的世界里游刃有余。
正则表达式(Regular ...对于想要在C语言项目中集成正则表达式功能的开发者来说,这是一个宝贵的参考资料。通过学习和使用这些文件,你可以掌握如何利用正则表达式进行复杂的文本处理任务,提升你的C语言编程能力。
正则表达式是一种强大的文本处理工具,用于在字符串中匹配、查找、替换或者提取符合特定...所提供的“正则表达式资料收集”压缩包文件应该包含了相关的教程、实例和练习,这对于深入理解和应用正则表达式非常有帮助。
在这个“正则表达式资料和一些它的应用”的压缩包中,可能包含了一系列关于正则表达式的教程、示例和参考资料,旨在帮助用户深入理解和熟练运用这一强大的工具。 1. **正则表达式基础** - **字符集**:包括普通...
C#中的常用正则表达式总结 javascript 验证url的正则表达式 JavaScript中的正则表达式学习1-2 JS与正则式强化训练作业 经典正则表达式 正则表达式--递归匹配与非贪婪匹配 正则式测试工具 等等等等
本资料"java_zhengze.rar"提供了对Java正则表达式的详细讲解,包括基本概念、元字符、预定义字符类以及各种匹配操作,对于Java开发者来说是一份非常实用的学习资源。 首先,我们来了解一下正则表达式的基石——元...
本资料全集是针对正则表达式语法的详细参考,适合初学者和进阶学习者。 首先,"正则表达式30分钟入门教程(第二版)"为初学者提供了快速了解正则表达式基础知识的途径。通常,正则表达式由字符、元字符、量词和括号等...
本资料包“正则全集”提供了全面的正则表达式学习资源,帮助你深入理解和熟练运用这一技术。 在C#中,正则表达式主要通过`System.Text.RegularExpressions`命名空间中的`Regex`类来使用。以下是一些核心知识点: 1...
通过学习这些资料,你可以从基础到高级全面掌握正则表达式,包括它的语法、匹配机制、在不同环境下的使用技巧,以及如何利用正则表达式解决实际问题。无论你是编程新手还是经验丰富的开发者,这些资料都能提供宝贵的...
JavaScript中的正则表达式是编程语言中不可或缺的一部分,它们用于处理字符串,进行模式匹配和文本检索、替换等操作。在JavaScript中,正则表达式既可以用字面量形式(/pattern/flags)定义,也可以通过RegExp构造...
本资源是 Tcl/tk 进阶资料,主要讲解正则表达式的概念和使用方法,通过作者的实践经验和实例讲解,非常易于理解和应用于实际开发中。 知识点一:正则表达式的历史和应用 * 正则表达式的历史可以追溯到 1956 年,...
《正则表达式描述(例)》这部分资料可能是通过实例来解析各种正则表达式用法,帮助读者更好地理解和应用。例如,可能包含邮箱地址验证的正则表达式"^\w+([-+.']\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$",或者URL验证的...