`
chenming100_1976
  • 浏览: 41889 次
  • 性别: Icon_minigender_1
  • 来自: 南京
社区版块
存档分类
最新评论

正则表达式(不断更新中....)

阅读更多
正则表达式学习
原创作者: ideage   阅读:4980次   评论:5条   更新时间:2007-03-13     收藏
正则表达式是个好东西,就是有些复杂.在验证输入,字符串查找,处理上确实很方便.

30分钟教程http://www.unibetter.com/deerchao/zhengzhe-biaodashi-jiaocheng-se.htm

D可使用的表达式:http://www.digitalmars.com/ctg/regular.html

常用的元字符
. 匹配除换行符以外的任意字符
\w 匹配字母或数字或下划线或汉字
\s 匹配任意的空白符
\d 匹配数字
\b 匹配单词的开始或结束
^ 匹配字符串的开始
$ 匹配字符串的结


常用的限定符
* 重复零次或更多次
+ 重复一次或更多次
? 重复零次或一次
{n} 重复n次
{n,} 重复n次或更多次
{n,m} 重复n到m次


常用的反义代码
\W 匹配任意不是字母,数字,下划线,汉字的字符
\S 匹配任意不是空白符的字符
\D 匹配任意非数字的字符
\B 匹配不是单词开头或结束的位置
[^x] 匹配除了x以外的任意字符
[^aeiou] 匹配除了aeiou这几个字母以外的任意字符

常用的正则表达式:

匹配中文字符的正则表达式: [\u4e00-\u9fa5], [\一-\龥] 可以.
评注:匹配中文还真是个头疼的事,有了这个表达式就好办了

匹配双字节字符(包括汉字在内):[^\x00-\xff]
评注:可以用来计算字符串的长度(一个双字节字符长度计2,ASCII字符计1)

匹配空白行的正则表达式:\n\s*\r
评注:可以用来删除空白行

匹配HTML标记的正则表达式:<(\S*?)[^>]*>.*?</\1>|<.*? />
评注:网上流传的版本太糟糕,上面这个也仅仅能匹配部分,对于复杂的嵌套标记依旧无能为力

匹配首尾空白字符的正则表达式:^\s*|\s*$
评注:可以用来删除行首行尾的空白字符(包括空格、制表符、换页符等等),非常有用的表达式

匹配Email地址的正则表达式:\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*
评注:表单验证时很实用

匹配网址URL的正则表达式:[a-zA-z]+://[^\s]*
评注:网上流传的版本功能很有限,上面这个基本可以满足需求

匹配帐号是否合法(字母开头,允许5-16字节,允许字母数字下划线):^[a-zA-Z][a-zA-Z0-9_]{4,15}$
评注:表单验证时很实用

匹配国内电话号码:\d{3}-\d{8}|\d{4}-\d{7}
评注:匹配形式如 0511-4405222 或 021-87888822

匹配腾讯QQ号:[1-9][0-9]{4,}
评注:腾讯QQ号从10000开始

匹配中国邮政编码:[1-9]\d{5}(?!\d)
评注:中国邮政编码为6位数字

匹配身份证:\d{15}|\d{18}
评注:中国的身份证为15位或18位

匹配ip地址:\d+\.\d+\.\d+\.\d+
评注:提取ip地址时有用

匹配特定数字:
^[1-9]\d*$    //匹配正整数
^-[1-9]\d*$   //匹配负整数
^-?[1-9]\d*$   //匹配整数
^[1-9]\d*|0$  //匹配非负整数(正整数 + 0)
^-[1-9]\d*|0$   //匹配非正整数(负整数 + 0)
^[1-9]\d*\.\d*|0\.\d*[1-9]\d*$   //匹配正浮点数
^-([1-9]\d*\.\d*|0\.\d*[1-9]\d*)$  //匹配负浮点数
^-?([1-9]\d*\.\d*|0\.\d*[1-9]\d*|0?\.0+|0)$  //匹配浮点数
^[1-9]\d*\.\d*|0\.\d*[1-9]\d*|0?\.0+|0$   //匹配非负浮点数(正浮点数 + 0)
^(-([1-9]\d*\.\d*|0\.\d*[1-9]\d*))|0?\.0+|0$  //匹配非正浮点数(负浮点数 + 0)
评注:处理大量数据时有用,具体应用时注意修正

匹配特定字符串:
^[A-Za-z]+$  //匹配由26个英文字母组成的字符串
^[A-Z]+$  //匹配由26个英文字母的大写组成的字符串
^[a-z]+$  //匹配由26个英文字母的小写组成的字符串
^[A-Za-z0-9]+$  //匹配由数字和26个英文字母组成的字符串
^\w+$  //匹配由数字、26个英文字母或者下划线组成的字符串


分享到:
评论

相关推荐

    论文研究-高性能正则表达式匹配算法综述.pdf

    随着网络流量不断增长、规则数目持续增多以及网络结构日趋灵活和动态,现有的正则表达式匹配算法面临着匹配速度、内存占用和更新能力等多方面的挑战。介绍了正则表达式匹配算法的研究背景,从空间压缩、匹配加速、...

    正则表达式用法大全

    本文属于正则表达式用法的一些总结,可能总结的不是太完美(不断在更新),但是一般的开发使用,问题不大。

    js正则表达式replace替换变量方法

    JavaScript正则实战(会根据最近写的不断更新) 1、javascript 正则对象替换创建 和用法: /pattern/flags 先简单案例学习认识下replace能干什么 正则表达式构造函数: new RegExp(“pattern”[,”flags”]); 正则...

    正则表达式替换table表格中的样式与空标记(保留rowspan与colspan)

    最近几天的劳动成果,用正则表达式去除表格中的样式与class方便后台编辑的操作,在编写过程中不断进步,后续将不定时更新,需要的朋友可以参考下

    前端正则表达式及书写技巧 收藏就完了

    今天带来的是前端开发中经常碰到的数字问题,解决方式有些过于粗暴,未来还会不断美化更新。 也欢迎大家关注我的Github,共同学习,共同提高。编者不才,如有问题,欢迎雅正,若有收获,请尽情用star羞辱我。另附...

    ETL-1:数据基本清洗包括日期、时间、数值、字符串、字符、金钱、数据库(mysql、postgresql、mongodb、hbase、hdfsmemcached)、加解密(md5、sha、base64、aes、rsa)、文件、http服务、正则表达式等,后期会不断更新

    ETL 数据基本清洗包括以下分类: 1.日期时间; 2.数值; 3.字符串; 4.字符; ...6.数据库(mysql、postgresql、mongodb、hbase、hdfs、memcached);...7.加解密(md5、sha、base64、aes、...后期会不断更新,望大家指正。

    memscan:在Windows进程的存储空间中搜索磁条卡磁道的字符串,正则表达式,信用卡号

    记忆扫描在进程的存储空间中搜索磁条卡磁道的字符串,正则表达式,信用卡号内存/进程扫描仪由NCC集团2014年的Matt Lewis撰写由NCC集团2015年的汤姆·沃森(Tom Watson)更新感谢杰西·布洛克(Jesse Bullock)的许多...

    Xshell Plus6 v6.0.0003.zip

    使用Xshell 6的高亮设置,可以为关键字或正则表达式在输出到终端时创建不可见的视觉线索。 根据您的要求使用用户定义的关键字创建自定义集并将其应用于会话。 (3)增强同步 Xftp 6为本地和远程的多个文件引入了...

    你必须知道的495个C语言问题(PDF)

    3.12 我需要根据条件把一个复杂的表达式赋值给两个变量中的一 个。可以用下边这样的代码吗? ((condition) ? a : b) = complicated expression; . . . . . . . . . . . . . . . . . . . . . . . . . . . 16 目录iii ...

    python处理excel

    使用正则表达式删除一列中所有[]包围的语句。Python是一种跨平台的计算机程序设计语言。 是一个高层次的结合了解释性、编译性、互动性和面向对象的脚本语言。最初被设计用于编写自动化脚本(shell),随着版本的不断...

    JavaScript实用范例词典04-14

    10.17 显示网页的最后更新时间... 328 10.18 为网页设置访问时间限制... 329 10.19 取得屏幕的色彩品质... 331 10.20 将链接页面显示在右页框中... 331 10.21 更换内置页框的内容... 333 10.22 同时卷动两个页...

    重命名标题标题「Rename Tab Title」-crx插件

    在“正则表达式”部分中,添加/更新正则表达式和相应的标题,然后按“保存”,例如:/.*google.*/匹配网址中带有术语google的所有网站,/ * /匹配所有网站*某些网站不断更新在某些事件上的标题(例如:gmail.com会在...

    UZCMS镜像采集系统(万能克隆小偷程序) v1.0.rar

    11. 支持自定义模板风格:通过正则表达式,屏蔽目标站的风格模块,将目标站的CSS文件下载到本地,即可实现自己制作完全脱离目标站的独立风格模板(新手需要帮助可以联系我们); 12. 支持站群功能:通过本程序的...

    宜春房产装饰网 v4.3

    《宜春房产装饰网》是一套历时三年打造的集房产,装饰,建材于一体的地方性门户网站程序。程序经过实际运营的考验。系统功能专业、强大、易用。...并经实际运营中不断调整,加强,使得此系统日益...修正:邮编正则表达式无

    UniversalFrame-8.9.8.1.zip

    包含大约76总常见正则表达式的验证; 包含脏字屏蔽和检测功能,使用算法验证可以有效的提高验证的效率; 包含完善的打日志功能,打的日志可以满足开发,异常错误打印非常详细。 未提及的功能还有很多,暂时就不罗列...

    asp.net开发常用整理集合

    不断更新中  Asp.net页面内传参数方法  调用存储过程(两种方法比较)  调用存储过程通用类DBHelper  加密解密  SQL常用DBHelper  Asp.net存储过程无限分类  TreeView无限分类  无限分类MVC  荧光棒...

    PHP和MySQL WEB开发(第4版)

    4.9 比较字符串函数和正则表达式函数 4.10 进一步学习 4.11 下一章 第5章 代码重用与函数编写 5.1 代码重用的好处 5.1.1 成本 5.1.2 可靠性 5.1.3 一致性 5.2 使用require()和include()函数 5.2.1 文件扩展名和...

    PHP和MySQL Web开发第4版pdf以及源码

    4.9 比较字符串函数和正则表达式函数 4.10 进一步学习 4.11 下一章 第5章 代码重用与函数编写 5.1 代码重用的好处 5.1.1 成本 5.1.2 可靠性 5.1.3 一致性 5.2 使用require()和include()函数 5.2.1 文件...

    PHP和MySQL Web开发第4版

    4.9 比较字符串函数和正则表达式函数 4.10 进一步学习 4.11 下一章 第5章 代码重用与函数编写 5.1 代码重用的好处 5.1.1 成本 5.1.2 可靠性 5.1.3 一致性 5.2 使用require()和include()函数 5.2.1 文件...

Global site tag (gtag.js) - Google Analytics