在C#中制作一个字符串扩展来确定字符串是否与正则表达式匹配

ops/2024/12/28 21:39:24/

正则表达式可以让你(相对)轻松地确定字符串是否与某种模式匹配。此示例展示了如何在 C# 中创建字符串扩展方法来确定字符串是否与正则表达式匹配

下面的StringExtensions类定义了Matches字符串扩展方法。

public static class StringExtensions
{// Extension to add a Matches method to the string class.public static bool Matches(this string the_string,string pattern){Regex reg_exp = new Regex(pattern);return reg_exp.IsMatch(the_string);}
}

该扩展方法创建一个Regex对象并使用其IsMatch方法来确定字符串是否与表达式匹配。

主程序使用扩展方法如下面的代码所示。

// Validate a 7-digit US phone number.
private void txt7Digit_TextChanged(object sender, EventArgs e)
{if (txt7Digit.Text.Matches("^[2-9]{3}-\\d{4}$")){txt7Digit.BackColor = Color.White;}else{txt7Digit.BackColor = Color.Yellow;}
}

当用户更改txt7Digit TextBox 中的文本时,代码使用Matches扩展方法来确定用户是否输入了有效的 7 位美国电话号码。如果文本不匹配,它将TextBox的背景颜色设置为黄色;如果文本匹配,它将背景颜色设置为白色。

该程序使用另外两个TextBox来确定它们是否包含 10 位美国电话号码,以及 7 位或 10 位电话号码。

下载示例进行试验并查看更多详细信息。


http://www.ppmy.cn/ops/145745.html

相关文章

Android MQTT关于断开连接disconnect报错原因

最近项目遇到一个需求,就是在登录状态的时候。才能接收到消息。所有我在上线,下线状态的时候。做了MQTT断开和连接的动作。然后就是发生了。我们标题的这关键点了。直接报错了。报错的内容如下: MqttAndroidClient unregisterRecevicer afte…

【自留】Unity VR入门

帮老师写的,自留,不保证是很好的教程。 1.PICO开发指南(官方) 在该页面,能找到大部分能实现的功能,以及实现方式。非常推荐!PICO Unity Integration SDK | PICO 开发者平台 2.如何快速入门&…

WPS中如何为指定区域的表格添加行或者列,同时不影响其它表格?

大家好,我是小鱼。 日常工作中会遇到这种情况:在一个Excel工作表中有多个表格,因为后期数据量增加就需要为指定区域的表格添加行或者列,但是不能影响其它表格。这种情况下我们应该怎么操作呢? 为指定区域的表格添加行…

Vue 3 具名插槽传值详解

Vue 3 具名插槽传值详解 Vue 3 的具名插槽不仅支持内容插入,还支持通过作用域插槽传递值(又称插槽作用域)。这使得父组件能够动态接收来自子组件的数据,从而实现更加灵活的组件开发。 在本文中,我们将深入讲解 Vue 3…

Python8-写一些小作业

记录python学习,直到学会基本的爬虫,使用python搭建接口自动化测试就算学会了,在进阶webui自动化,app自动化 python基础8-灵活运用顺序、选择、循环结构 写一些小练习题目1、给一个半径,求圆的面积和周长,…

论文分享—— 软件物料清单(SBOM)开源与专有工具的现状研究

论文来源:https://arxiv.org/abs/2402.11151 A Landscape Study of Open Source and Proprietary Tools for Software Bill of Materials (SBOM) 以下论文总结由豆包生成: 一、研究背景 现代软件应用依赖众多第三方组件,软件供应链安全面临…

要查询 `user` 表中 `we_chat_open_id` 列不为空的用户数量

要查询 user 表中 we_chat_open_id 列不为空的用户数量,你可以使用以下 SQL 查询语句: SELECT COUNT(*) FROM user WHERE we_chat_open_id IS NOT NULL AND we_chat_open_id ! ;解释: SELECT COUNT(*): 表示要计算符合条件的行数。FROM us…

基于Sentinel的服务保护方案的三种方式(请求限流、线程隔离、服务熔断)超详细讲解

目录 1、三种方式介绍 1.1请求限流 1.2 线程隔离方案 1.3 服务熔断 2、基于sentinel实现 2.1 启动sentinel 2.2 基于springboot整合sentinel 2.2.1请求限流 2.2.2请求隔离 2.2.2.1 OpenFeign整合Sentinel 2.2.3 服务熔断 2.2.3.1 编写降级代码 2.2.3.2 服务熔断 1、…