JavaScript常用正则表达式全解析与应用场景

0 下载量 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*$`:匹配正浮点数,包括小数部分。 这些正则表达式在日常开发中非常实用,可以帮助开发者高效地处理字符串和文本格式的校验与转换。理解并熟练运用它们将大大提高代码的准确性和可维护性。