正则表达式实用大全

需积分: 9 2 下载量 195 浏览量 更新于2024-09-15 收藏 4KB TXT 举报
"这篇资料主要介绍了正则表达式的常见用法,包括匹配中文字符、双字节字符、计算字符串长度、处理HTML标签、去除字符串首尾空格、转换IP地址和验证邮箱及URL等。" 正则表达式是编程语言中用于处理文本的强大工具,可以用来查找、替换或提取特定模式的字符串。以下是一些关键知识点: 1. **匹配中文字符**:正则表达式`[\u4e00-\u9fa5]`用于匹配任何中文字符。这个范围涵盖了Unicode中的所有汉字。 2. **匹配双字节字符**:`[^\x00-\xff]`用来匹配非ASCII字符,即双字节字符,包括但不限于汉字。在计算字符串长度时,这样的字符会被视为两个单位。 3. **计算字符串长度**:在JavaScript中,可以通过替换非ASCII字符为多个占位符,然后计算结果字符串的长度来获取包含双字节字符的字符串的实际长度。例如,`String.prototype.len = function() { return this.replace(/[^\x00-\xff]/g, "aa").length; }`。 4. **处理HTML标签**:`/<(.*)>.*<\/\1>|<(.*)\/>/` 是一个正则表达式,用于匹配HTML标签,无论是带有闭合标签还是自闭和标签。 5. **去除字符串首尾空格**:`/(^\s*)|(\s*$)/g` 可以用来删除字符串开头和结尾的空白字符,如空格和制表符。在JavaScript中,可以创建一个新的`trim`方法,如 `String.prototype.trim = function() { return this.replace(/(^\s*)|(\s*$)/g, ""); }`。 6. **转换IP地址**:正则表达式`/(\d+)\.(\d+)\.(\d+)\.(\d+)/g` 可以用于匹配IP地址格式,并通过数学运算将其转换为十进制数值。例如,函数 `IP2V(ip)` 将IP地址转换为整数。 7. **验证邮箱地址**:`\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*` 是一个常见的邮箱地址验证正则表达式,它可以匹配大多数有效的电子邮件地址格式。 8. **验证URL**:`http://([\w-]+\.)+[\w-]+(/[\w-./?%&=]*)?` 用于匹配HTTP URL,包括域名和可选的路径、查询参数等。 9. **重复字符查找**:通过正则表达式`(.).*\1` 可以找到字符串中重复的子串,如`vars1 = s.replace(/(.).*\1/g, "$1")`。 10. **去除重复字符**:使用 `replace` 方法和自定义的正则表达式,可以去除字符串中的重复字符,如`vars2 = s.replace(re, "")`。 这些正则表达式在处理字符串时非常实用,可以大大提高代码的效率和准确性。在编程中熟练掌握正则表达式,可以极大地提升处理文本数据的能力。