正则表达式精华:中文匹配、HTML标签与邮箱验证
需积分: 4 193 浏览量
更新于2024-08-30
收藏 62KB PDF 举报
本篇文章汇总了日常工作中常用的正则表达式,帮助读者理解和掌握各种场景下的字符串匹配规则。以下是一些关键知识点:
1. **匹配中文字符**:
- 表达式:`[u4e00-u9fa5]`
- 评注:正则表达式 `[u4e00-u9fa5]` 是为了匹配Unicode范围内的中文字符,解决了在编程中处理中文文本时常见的难题。
2. **匹配双字节字符**:
- 表达式:`[^x00-xff]`
- 评注:双字节字符包括汉字,这个表达式用于计算字符串长度,一个双字节字符计为2个字符单位,而ASCII字符计为1个。
3. **删除空白行**:
- 表达式:`ns*r`
- 评注:`ns*r` 匹配任何数量的空白字符(包括空格、制表符等),可以用于清理文本中的多余空白行。
4. **匹配HTML标记**:
- 表达式:`<(S*?)[^>]*>.*?|<.*?/>`
- 评注:尽管这个表达式比网络上流传的一些版本好,但还是无法处理复杂嵌套的HTML标记,对于更高级的HTML解析可能不够强大。
5. **匹配首尾空白字符**:
- 表达式:`^s*|s*$`
- 评注:用于移除字符串两端的空白字符,适用于去除文本格式化时的多余空格。
6. **验证Email地址**:
- 表达式:`w+([-+.]w+)*@w+([-.]w+)*.w+([-.]w+)*`
- 评注:这是一个基础的Email地址验证模式,适合用于输入验证。
7. **匹配URL**:
- 表达式:`[a-zA-z]+://[^s]*`
- 评注:提供了一个更全面的URL匹配模式,能够处理大部分常见网址格式。
8. **验证账号**:
- 表达式:`^[a-zA-Z][a-zA-Z0-9_]{4,15}$`
- 评注:用于检查账户名是否符合字母开头、长度在5-16字节且只包含字母、数字和下划线的规则。
9. **匹配电话号码**:
- 表达式:`d{3}-d{8}|d{4}-d{7}`
- 评注:适应中国电话号码格式,包括区号和本地号码。
10. **匹配腾讯QQ号**:
- 表达式:`[1-9][0-9]{4,}`
- 评注:限定于QQ号从10000开始的格式。
11. **匹配邮政编码**:
- 表达式:`[1-9]d{5}(?!d)`
- 评注:针对中国邮政编码,6位数字且最后一位不能为数字。
12. **匹配身份证号码**:
- 表达式:`d{15}|d{18}`
- 评注:覆盖15位和18位中国居民身份证号码。
13. **匹配IP地址**:
- 表达式:`d+.d+.d+.d+`
- 评注:用于提取和验证IP地址。
14. **匹配特定数字类型**:
- 包括正整数、负整数、非负整数、正浮点数和负浮点数的匹配表达式,提供了多种验证选项。
这些正则表达式是IT开发人员在处理文本数据时经常使用的工具,熟练掌握它们可以大大提高代码的效率和准确性。然而,实际应用中可能需要根据具体需求进行调整和优化,尤其是对于复杂的文本结构,可能需要结合其他方法或库来实现更精确的匹配。
2013-10-12 上传
2013-11-07 上传
2017-05-26 上传
2020-10-23 上传
2020-10-21 上传
2010-06-29 上传
点击了解资源详情
点击了解资源详情
2009-11-11 上传
weixin_38680764
- 粉丝: 3
- 资源: 903
最新资源
- NIST REFPROP问题反馈与解决方案存储库
- 掌握LeetCode习题的系统开源答案
- ctop:实现汉字按首字母拼音分类排序的PHP工具
- 微信小程序课程学习——投资融资类产品说明
- Matlab犯罪模拟器开发:探索《当蛮力失败》犯罪惩罚模型
- Java网上招聘系统实战项目源码及部署教程
- OneSky APIPHP5库:PHP5.1及以上版本的API集成
- 实时监控MySQL导入进度的bash脚本技巧
- 使用MATLAB开发交流电压脉冲生成控制系统
- ESP32安全OTA更新:原生API与WebSocket加密传输
- Sonic-Sharp: 基于《刺猬索尼克》的开源C#游戏引擎
- Java文章发布系统源码及部署教程
- CQUPT Python课程代码资源完整分享
- 易语言实现获取目录尺寸的Scripting.FileSystemObject对象方法
- Excel宾果卡生成器:自定义和打印多张卡片
- 使用HALCON实现图像二维码自动读取与解码