JavaScript正则表达式实战:电话、手机号、IP、邮箱等

需积分: 9 4 下载量 54 浏览量 更新于2024-10-18 收藏 284KB PDF 举报
"这篇文档是关于JavaScript中常用的正则表达式的实战应用,涵盖了多种常见的匹配和处理字符串的场景。" 正则表达式是编程中处理字符串的强大工具,尤其是在JavaScript中,它被广泛用于数据验证、文本提取和字符串操作。这份文档详细列举了一系列实用的正则表达式实例,包括: 1. **匹配结尾的数字**:使用正则表达式`/\d+$/g`,可以找到字符串末尾的一串数字。 2. **统一空格个数**:通过`/\s+/g`匹配并替换连续的多个空格,将其统一为单个空格,从而整理文本格式。 3. **判断字符串是否全由数字组成**:使用简单的正则`^\d+$`,可以检查字符串是否仅包含数字。 4. **电话号码正则**:通常用来验证中国大陆电话号码的格式,可能包括区号和号码部分,具体正则因地区和格式要求而异。 5. **手机号码正则表达式**:中国的手机号码通常为11位数字,如`^1[3-9]\d{9}$`,但实际应用中应根据具体规则进行调整。 6. **删除字符串中的空格**:使用`str.replace(/\s/g, "")`可以移除字符串中的所有空格。 7. **限制文本框输入**:正则可以限制用户输入,如`/^\d+(\.\d)?$`允许输入数字和小数点。 8. **替换小数点前内容**:例如,使用`str.replace(/(\d+(\.\d*)?)\./, "$1")`可以保留小数点后的部分。 9. **只匹配中文的正则**:`/^[\u4e00-\u9fa5]+$/`可用来检测字符串是否全为中文字符。 10. **返回字符串的中文字符个数**:利用正则遍历字符串计算中文字符的数量。 11. **匹配IP地址前三段**:例如,使用`/(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.([0-9]{1,2}|1[0-9]{2}|2[0-4][0-9]|25[0-5])\.([0-9]{1,2}|1[0-9]{2}|2[0-4][0-9]|25[0-5])/`可以匹配IPv4地址的前三段。 12. **匹配HTML标签间的内容**:如`/<ul>(.*?)<\/ul>/s`可以获取`<ul>`标签对之间的文本。 13. **获取文件名**:通过`/[^\/]+$`或`/(?:[^\/\\]+\.([^\\\/]*))$/`匹配URL或路径中的文件名。 14. **绝对路径转相对路径**:这涉及到路径解析,通常需要编写特定的函数来处理。 15. **用户名正则**:通常要求用户名只能包含字母、数字和下划线,如`/^[a-zA-Z0-9_]+$/`。 16. **匹配英文地址**:复杂度较高的正则,需要考虑街道名、城市、州和邮政编码等元素。 17. **正则匹配价格**:如`/\d+(\.\d{1,2})?/`可以匹配货币格式的数字。 18. **身份证号码的匹配**:中国身份证号码的正则为`/^\d{15}|\d{18}$/`,15位或18位。 19. **要求文本有指定行数**:通过分割文本并计数,可以判断是否有特定数量的行。 20. **单词首字母大写**:使用正则结合字符串方法可以实现每个单词首字母大写。 21. **正则验证日期格式**:如`/^\d{4}-\d{2}-\d{2}$/`可匹配"YYYY-MM-DD"格式。 22. **去掉文件的后缀名**:通过查找最后一个`.`并截取,或使用正则`/(.*)(\.\w+)$/$1/`。 23. **验证邮箱的正则表达式**:常见的邮箱验证正则如`/^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$/`。 24. **匹配源代码中的链接**:使用HTML或URL相关的正则表达式。 25. **正则判断标签是否闭合**:通过分析HTML结构判断。 26. **用正则获得指定标签的内容**:可以使用正则提取HTML标签内的文本。 27. **正则判断是否为数字与字母的混合**:如`/^[a-zA-Z0-9]+$/`。 28. **空格与英文同时存在**:例如,`/[\s\S]+[a-zA-Z]+\s+\d+/`可以匹配包含英文和数字的字符串。 以上只是文档中的一部分内容,实际文档包含了更多正则表达式的示例和应用场景,对于学习和使用JavaScript正则表达式非常有帮助。在实际编程中,可以根据具体需求选择或调整这些正则表达式。