正则表达式全攻略:匹配规则与示例
需积分: 10 11 浏览量
更新于2024-09-12
1
收藏 8KB TXT 举报
"正则表达式是一门强大的文本处理工具,用于匹配、查找、替换等操作。本资源包含了多种常见的正则表达式模式,涵盖了中文字符、双字节字符、空行、HTML标记、首尾空格、Email地址、网址URL、合法帐号等多个方面。下面将对这些正则表达式的功能进行详细解释。
1. 匹配中文字符的正则表达式:`[\u4e00-\u9fa5]` 这个正则用来匹配Unicode范围内的中文字符,范围从\u4e00到\u9fa5。
2. 匹配双字节字符(包括汉字):`[^\x00-\xff]` 它匹配所有非ASCII字符,即双字节字符,包括汉字和其他非英文字符。
3. 匹配空行的正则表达式:`\n[\s| ]*\r` 这个正则表达式可以找出文本中的空行,包括换行符(\n)后面跟着任意数量的空格或制表符,最后是回车符(\r)。
4. 匹配HTML标记的正则表达式:`/<(.*)>.*<\/\1>|<(.*) \/>/` 该正则可以捕获HTML的开启和关闭标签,以及自闭合标签。
5. 匹配首尾空格的正则表达式:`(^\s*)|(\s*$)` 它可以用来删除字符串开头或结尾的空白字符。
6. 匹配Email地址的正则表达式:`\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*` 这个正则能够识别符合标准格式的电子邮件地址。
7. 匹配网址URL的正则表达式:`^[a-zA-z]+://(\\w+(-\\w+)*)(\\.(\\w+(-\\w+)*))*(\\?\\S*)?$` 此正则可以检测一个基本的URL结构,包括协议、域名和可选的查询参数。
8. 匹配帐号是否合法:`^[a-zA-Z][a-zA-Z0-9_]{4,15}$` 这个正则确保用户名以字母开始,之后可跟4-15个字母、数字或下划线。
除此之外,还有一些其他正则表达式模式:
- `^\d+$` 匹配非负整数(不包括前导零)
- `^[0-9]*[1-9][0-9]*$` 匹配正整数(不包括前导零)
- `^((-\d+)|(0+))$` 匹配负整数或零
- `^-?[0-9]*[1-9][0-9]*$` 匹配整数(包括正负)
- `^\d+(\.\d+)?$` 匹配非负浮点数(不包括前导零)
- `^(([0-9]+\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\.[0-9]+)|([0-9]*[1-9][0-9]*))$` 匹配浮点数(包括正负)
- `^((-\d+(\.\d+)?)|(0+(\.0+)?))$` 匹配浮点数(包括正负和零)
- `^(-(([0-9]+\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\.[0-9]+)|([0-9]*[1-9][0-9]*)))$` 同上,但更紧凑的写法
- `^(-?\d+)(\.\d+)?$` 匹配浮点数(包括正负和零)
此外,还有用于匹配特定字符集的正则表达式,如全大写字母、全小写字母、字母数字混合等:
- `^[A-Za-z]+$` 匹配全大写字母字符串
- `^[A-Z]+$` 匹配全大写字母字符串(没有下划线)
- `^[a-z]+$` 匹配全小写字母字符串
- `^[A-Za-z0-9]+$` 匹配字母数字混合字符串
- `^\w+$` 匹配字母、数字或下划线组成的字符串
邮箱地址和URL的验证也有专门的正则表达式:
- `^[\w-]+(\.[\w-]+)*@[\w-]+(\.[\w-]+)+$` 验证电子邮件地址
- `^[a-zA-z]+://(\w+(-\w+)*)(\.(\w+(-\w+)*))*(\?\S*)?$` 验证URL
日期格式和电话号码也有相应的正则:
- `/^(d{2}|d{4})-((0([1-9]{1}))|(1[1|2]))-(([0-2]([1-9]{1}))|(3[0|1]))$/` 匹配日期格式
- `/^((0([1-9]{1}))|(1[1|2]))/(([0-2]([1-9]{1}))|(3[0|1]))/(d{2}|d{4})$/` 另一种日期格式
- `^([w-.]+)@(([[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}.)|(([w-]+.)+))([a-zA-Z]{2,4}|[0-9]{1,3})(]?)$` 更复杂的电子邮件地址验证
- `/^((\+?[0-9]{2,4}\-[0-9]{3,4}\-)|([0-9]{3,4}\-))?([0-9]{7,8})(\-[0-9]+)?$/` 用于验证电话号码
IP地址的正则表达式:
- `^(d{1,2}|1dd|2[0-4]d|25[0-5]).(d{1,2}|1dd|2[0-4]d|25[0-5]).(d{1,2}|1dd|2[0-4]d|25[0-5]).(d{1,2}|1dd|2[0-4]d|25[0-5])` 匹配IPv4地址
以上正则表达式在数据验证、文本处理和搜索替换等场景中都有广泛的应用。掌握它们能极大地提高你在处理文本时的效率。"
2022-08-08 上传
2014-08-04 上传
2010-07-27 上传
2010-12-20 上传
2023-10-12 上传
2024-11-08 上传
2024-11-08 上传
lijiechen0101
- 粉丝: 1
- 资源: 5
最新资源
- 构建基于Django和Stripe的SaaS应用教程
- Symfony2框架打造的RESTful问答系统icare-server
- 蓝桥杯Python试题解析与答案题库
- Go语言实现NWA到WAV文件格式转换工具
- 基于Django的医患管理系统应用
- Jenkins工作流插件开发指南:支持Workflow Python模块
- Java红酒网站项目源码解析与系统开源介绍
- Underworld Exporter资产定义文件详解
- Java版Crash Bandicoot资源库:逆向工程与源码分享
- Spring Boot Starter 自动IP计数功能实现指南
- 我的世界牛顿物理学模组深入解析
- STM32单片机工程创建详解与模板应用
- GDG堪萨斯城代码实验室:离子与火力基地示例应用
- Android Capstone项目:实现Potlatch服务器与OAuth2.0认证
- Cbit类:简化计算封装与异步任务处理
- Java8兼容的FullContact API Java客户端库介绍