正则表达式基础教程:快速掌握常用语法

需积分: 9 0 下载量 84 浏览量 更新于2024-10-18 收藏 8KB TXT 举报
"正则表达式是用于匹配字符串的强大工具,尤其在文本处理、数据验证和提取中扮演着重要角色。本资源旨在帮助初学者掌握正则表达式的常用语法,以便能够有效地应用到实际问题中。" 正则表达式(Regular Expression)是一种模式匹配语言,用于在文本中查找、替换或提取符合特定规则的字符串。以下是正文中提到的一些正则表达式语法及应用场景: 1. 数字匹配: - `^[0-9]*$`:匹配任意数量的数字。 - `^\d{n}$`:匹配恰好n个数字。 - `^\d{n,}$`:匹配至少n个数字。 - `^\d{m,n}$`:匹配m到n个数字。 2. 非负整数匹配: - `^(0|[1-9][0-9]*)$`:确保数字不以0开头,可匹配非负整数。 3. 金额格式匹配: - `^[0-9]+(.[0-9]{2})?$`:匹配最多包含两位小数的数字,如1234.56。 - `^[0-9]+(.[0-9]{1,3})?$`:匹配最多包含三位小数的数字,如1234.567。 4. 国际电话号码匹配: - `^\+?[1-9][0-9]*$`:匹配国际电话号码,允许有加号开头。 5. 字符长度限制: - `^.{3}$`:匹配长度为3的字符串。 - `[A-Za-z]+$`:匹配仅包含英文字母的字符串,长度不限。 6. 英文字母大小写限制: - `[A-Z]+$`:匹配仅包含大写字母的字符串,长度不限。 - `[a-z]+$`:匹配仅包含小写字母的字符串,长度不限。 - `[A-Za-z0-9]+$`:匹配仅包含字母和数字的字符串,长度不限。 7. 特殊字符组合: - `\w+$` 或 `^\w+$`:匹配包含字母、数字和下划线的字符串,长度不限,等价于`[A-Za-z0-9_]+`。 8. 邮箱地址验证: - `^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$`:根据常见邮箱格式进行匹配。 9. Internet URL 验证: - `^http://([\w-]+\.)+[\w-]+(/[\w-./?%&=]*)?$`:匹配HTTP协议的URL。 10. 中国手机号码验证: - `^(\(\d{3,4}-)|\d{3,4}-)?\d{7,8}$`:匹配中国的手机号码格式。 11. 身份证号码验证: - `^\d{15}|\d{18}$`:匹配15位或18位的身份证号码。 12. 月份验证: - `^(0?[1-9]|1[0-2])$`:匹配1-12的月份。 13. 日期验证: - `^((0?[1-9])|((1|2)[0-9])|30|31)$`:匹配1-31的日期,适用于非闰年2月。 14. 汉字输入限制: - 通过正则表达式`onkeyup="value=value.replace(/[^\u4E00-\u9FA5]/g,)"`和`onbeforepaste="clipboardData.setData(text,clipboardData.getData(text).replace(/[^\u4E00-\u9FA5]/g,))"`限制输入框只允许输入汉字。 15. 全角字符限制: - 使用`onkeyup="value=value.replace(/[^\uFF00-\uFFFF]/g,)"`可以限制输入全角字符。 通过熟练掌握这些正则表达式,你可以轻松地对各种字符串进行有效的验证和过滤,提高程序的健壮性和用户体验。