JavaScript常用正则表达式全解析与应用场景
17 浏览量
更新于2024-07-15
收藏 186KB PDF 举报
在JavaScript中,正则表达式是一种强大的工具,用于处理文本模式匹配和字符串操作。以下是一些常用正则表达式的详细介绍:
1. **全由数字组成的验证**:
函数`isDigit(s)`通过正则表达式`/^[0-9]{1,20}$/`来检查输入字符串`s`是否只包含1到20个连续的数字。`exec`方法用于查找匹配,如果没有找到匹配则返回`false`,否则返回`true`。
2. **匹配中文字符**:
使用`[u4e00-u9fa5]`正则表达式,匹配Unicode范围内的中文字符,解决了中文字符特殊性的处理问题。
3. **匹配双字节字符**:
`[^x00-xff]`匹配所有不是ASCII字符的字符,尤其适用于检测包括汉字在内的多字节字符,用于计算字符串长度时,一个双字节字符长度为2个字符单位。
4. **删除空白行**:
正则表达式`ns*r`匹配零个或多个空格(n)后跟着零个或多个任意字符(s)的序列,可用于去除文本中的空白行。
5. **匹配HTML标记**:
用`<(S*?)[^>]*>.*?|<.*?/>`来匹配HTML标签,但要注意它可能无法处理复杂的嵌套情况,只能匹配简单的标记。
6. **匹配首尾空白字符**:
正则表达式`^s*|s*$`用于移除字符串首尾的空格、制表符或换页符,清理文本格式。
7. **Email地址验证**:
`w+([-+.]w+)*@w+([-.]w+)*.w+([-.]w+)*`是验证电子邮件地址的标准正则,用于表单输入验证。
8. **URL匹配**:
`[a-zA-z]+://[^s]*`匹配URL,虽然基础版本可能不足,但能满足大部分常见URL格式的需求。
9. **账号合法性验证**:
`^[a-zA-Z][a-zA-Z0-9_]{4,15}$`确保账号以字母开始,长度在5到16个字符之间,允许字母、数字和下划线。
10. **国内电话号码匹配**:
`d{3}-d{8}|d{4}-d{7}`符合中国大陆电话号码的两种格式,如0511-4405222或021-87888822。
11. **腾讯QQ号匹配**:
`[1-9][0-9]{4,}`,QQ号从10000开始递增。
12. **中国邮政编码**:
`[1-9]d{5}(?!d)`,识别6位数字的邮政编码,排除后续可能的数字。
13. **身份证号码匹配**:
`d{15}|d{18}`,中国的身份证号码通常为15位或18位。
14. **IP地址提取**:
`d+.d+.d+.d+`用于从文本中提取IPv4地址。
15. **特定数字匹配**:
- `^[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*$`:匹配正浮点数,包括小数部分。
这些正则表达式在日常开发中非常实用,可以帮助开发者高效地处理字符串和文本格式的校验与转换。理解并熟练运用它们将大大提高代码的准确性和可维护性。
2008-01-17 上传
2012-07-02 上传
点击了解资源详情
2020-10-23 上传
2020-10-21 上传
2016-08-25 上传
2010-06-29 上传
2020-10-21 上传
weixin_38713393
- 粉丝: 8
- 资源: 878
最新资源
- JHU荣誉单变量微积分课程教案介绍
- Naruto爱好者必备CLI测试应用
- Android应用显示Ignaz-Taschner-Gymnasium取消课程概览
- ASP学生信息档案管理系统毕业设计及完整源码
- Java商城源码解析:酒店管理系统快速开发指南
- 构建可解析文本框:.NET 3.5中实现文本解析与验证
- Java语言打造任天堂红白机模拟器—nes4j解析
- 基于Hadoop和Hive的网络流量分析工具介绍
- Unity实现帝国象棋:从游戏到复刻
- WordPress文档嵌入插件:无需浏览器插件即可上传和显示文档
- Android开源项目精选:优秀项目篇
- 黑色设计商务酷站模板 - 网站构建新选择
- Rollup插件去除JS文件横幅:横扫许可证头
- AngularDart中Hammock服务的使用与REST API集成
- 开源AVR编程器:高效、低成本的微控制器编程解决方案
- Anya Keller 图片组合的开发部署记录