史上最全正则表达式:数字与字符验证规则

需积分: 1 0 下载量 170 浏览量 更新于2024-09-10 收藏 17KB DOCX 举报
"正则表达式是用于匹配字符串模式的一种强大工具,广泛应用于数据验证、文本搜索和替换等场景。本文将详细介绍各种针对数字和字符的正则表达式验证规则。" 1. **数字的正则表达式** - `^[0-9]*$`:匹配任意数量的数字,包括零个数字。 - `^\d{n}$`:匹配恰好n位的数字。 - `^\d{n,}$`:匹配至少n位的数字。 - `^\d{m,n}$`:匹配m到n位的数字。 - `^(0|[1-9][0-9]*)$`:匹配零或非零开头的数字。 - `^([1-9][0-9]*)+(.[0-9]{1,2})?$`:匹配非零开头,最多带两位小数的数字。 - `^(\-)?\d+(\.\d{1,2})?$`:匹配正数、负数或带有1-2位小数的数。 - `^(\-|\+)?\d+(\.\d+)?$`:匹配正数、负数和小数,允许正负号。 - `^[0-9]+(.[0-9]{2})?$`:匹配有两位小数的正实数。 - `^[0-9]+(.[0-9]{1,3})?$`:匹配有1-3位小数的正实数。 - `^[1-9]\d*$` 或 `^([1-9][0-9]*){1,3}$` 或 `^\+?[1-9][0-9]*$`:匹配非零的正整数。 - `^\-[1-9][]0-9"*$` 或 `^-[1-9]\d*`:匹配非零的负整数。 - `^\d+$` 或 `^[1-9]\d*|0$`:匹配非负整数。 - `^-[1-9]\d*|0$` 或 `^((-\d+)|(0+))$`:匹配非正整数。 - `^\d+(\.\d+)?$` 或 `^[1-9]\d*\.\d*|0\.\d*[1-9]\d*|0?\.0+|0$`:匹配非负浮点数。 - `^((-\d+(\.\d+)?)|(0+(\.0+)?))$` 或 `^(-([1-9]\d*\.\d*|0\.\d*[1-9]\d*))|0?\.0+|0$`:匹配非正浮点数。 - `^[1-9]\d*\.\d*|0\.\d*[1-9]\d*$` 或 `^(([0-9]+\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\.[0-9]+)|([0-9]*[1-9][0-9]*))$`:匹配正浮点数。 - `^-([1-9]\d*\.\d*|0\.\d*[1-9]\d*)$` 或 `^(-(([0-9]+\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\.[0-9]+)|([0-9]*[1-9][0-9]*)))$`:匹配负浮点数。 - `^(-?\d+)(\.\d+)?$` 或 `^-?([1-9]\d*\.\d*|0\.\d*[1-9]\d*|0?\.0+|0)$`:匹配浮点数,包括正负。 2. **字符的正则表达式** - `^[\u4e00-\u9fa5]{0,}$`:匹配任意数量的汉字。 - `^[A-Za-z0-9]+$` 或 `^[A-Za-z0-9]{4,40}$`:匹配英文和数字的组合,长度可自定义。 - `^.{3,20}$`:匹配长度为3到20的任意字符。 这些正则表达式提供了对数字和字符进行精确匹配的规则,是进行数据验证的关键工具。在编程中,它们常用于输入验证,确保用户输入的数据符合预设的格式要求,从而防止数据错误或恶意输入。了解并熟练运用这些规则,能够提高代码的健壮性和安全性。