C#正则表达式小结(常用的正则表达式)
### C#中的正则表达式应用详解 在软件开发领域,正则表达式是一种非常强大的文本处理工具。本文将基于给定的标题、描述及部分示例内容,深入解析常用的几种正则表达式及其应用场景。 #### 1. 数字相关的正则表达式 **用途:** 这类正则表达式主要用于验证或提取数字格式的数据。 - **只能输入数字**:“`^[0-9]*$`” - **解释:** 这个表达式确保整个字符串由0到9之间的任意数字组成,可以为空串。 - **只能输入n位的数字**:“`^\d{n}$`” - **解释:** 确保字符串恰好包含n个数字。其中`\d`等同于`[0-9]`。 - **只能输入至少n位的数字**:“`^\d{n,}$`” - **解释:** 确保字符串至少包含n个数字。 - **只能输入m~n位的数字**:“`^\d{m,n}$`” - **解释:** 确保字符串包含m到n之间位数的数字。 - **只能输入零和非零开头的数字**:“`^(0|[1-9][0-9]*)$`” - **解释:** 这个表达式确保字符串以0开头或者以1-9开头后跟着任意数量的数字。 - **只能输入有两位小数的正实数**:“`^[0-9]+(.[0-9]{2})?$`” - **解释:** 确保字符串由一个或多个数字组成,后面可选跟一个小数点以及两个数字。 - **只能输入有1~3位小数的正实数**:“`^[0-9]+(.[0-9]{1,3})?$`” - **解释:** 类似上一条规则,但允许1到3位小数。 - **只能输入非零的正整数**:“`^\+?[1-9][0-9]*$`” - **解释:** 确保字符串以1-9的数字开头,并允许以+号开头。 - **只能输入非零的负整数**:“`^\-[1-9][0-9]*$`” - **解释:** 类似正整数规则,但以-号开头。 #### 2. 字符串长度限制 - **只能输入长度为3的字符**:“`^.{3}$`” - **解释:** 确保字符串恰好包含3个字符。 #### 3. 字母相关的正则表达式 - **只能输入26个英文字母组成的字符串**:“`^[A-Za-z]+$`” - **解释:** 确保字符串只包含大写或小写字母。 - **只能输入26个大写字母组成的字符串**:“`^[A-Z]+$`” - **解释:** 确保字符串只包含大写字母。 - **只能输入26个小写字母组成的字符串**:“`^[a-z]+$`” - **解释:** 确保字符串只包含小写字母。 - **字母和数字组合**:“`^[A-Za-z0-9]+$`” - **解释:** 确保字符串只包含字母和数字。 - **字母数字下划线组合**:“`^\w+$`” - **解释:** 确保字符串只包含字母、数字或下划线。 #### 4. 复杂数据格式 - **用户名验证**:“`^[a-zA-Z]\w{5,17}$`” - **解释:** 确保用户名以字母开头且长度在6到18个字符之间。 - **特殊字符过滤**:“`[^%&',;=?$\x22]+`” - **解释:** 确保字符串不包含特定特殊字符。 - **只能输入汉字**:“`^[\u4e00-\u9fa5]{0,}$`” - **解释:** 确保字符串只包含汉字。 - **邮箱验证**:“`^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$`” - **解释:** 验证邮箱地址是否符合标准格式。 - **网址验证**:“`^http://([/\w-]+\.)+[\w-]+(/[\w-./?%&=]*)?$`” - **解释:** 验证HTTP开头的网址是否有效。 - **电话号码验证**:“`^(\(\d{3,4}-)|\d{3.4}-)?\d{7,8}$`” - **解释:** 验证电话号码是否符合指定格式。 - **身份证号码验证**:“`^\d{15}|\d{18}$`” - **解释:** 确保字符串为15位或18位的身份证号码。 - **月份验证**:“`^(0?[1-9]|1[0-2])$`” - **解释:** 确保字符串为1到12月中的某个月份。 - **日期验证**:“`^((0?[1-9])|((1|2)[0-9])|30|31)$`” - **解释:** 确保字符串为1到31日之间的某一天。 #### 5. JavaScript代码片段 除了以上正则表达式的介绍外,文章还提供了一些JavaScript代码片段用于处理各种场景: - **过滤非法字符**: 通过JavaScript代码实现对字符串中非汉字、全角字符、数字、英文等进行过滤。 - **URL提取**: 提取URL中的特定部分。 - **双字节字符处理**: 检测并处理双字节字符。 - **字符串去空格**: 去除字符串前后的空白字符。 - **IP地址转换**: 将IP地址转换为数值表示。 这些正则表达式和代码片段对于C#开发者来说非常有用,特别是在处理用户输入数据时能够帮助验证数据的有效性和格式正确性,从而提高应用程序的安全性和用户体验。
- weixin_417419862022-05-24不是我想要的啊。
- 粉丝: 0
- 资源: 1
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助