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

devtools/2024/12/25 11:05:25/

正则表达式可以让你(相对)轻松地确定字符串是否与某种模式匹配。此示例展示了如何在 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/devtools/145242.html

相关文章

vue中proxy代理配置(测试一)

接口地址:http://jsonplaceholder.typicode.com/posts 1、配置一(代理没起作用) (1)设置baseURL为http://jsonplaceholder.typicode.com (2)proxy为 ‘/api’:’ ’ (3&a…

华为实训课笔记 2024 1223-1224

华为实训 12/2312/24 12/23 [Huawei]stp enable --开启STP display stp brief --查询STP MSTID Port Role STP State Protection 实例ID 端口 端口角色 端口状态 是否开启保护[Huawei]display stp vlan xxxx --查询制定vlan的生成树计算结…

springboot484基于springboot的扶贫助农系统(论文+源码)_kaic

摘 要 传统办法管理信息首先需要花费的时间比较多,其次数据出错率比较高,而且对错误的数据进行更改也比较困难,最后,检索数据费事费力。因此,在计算机上安装扶贫助农系统软件来发挥其高效地信息处理的作用&#xff0c…

http反向代理

通过反向代理实现访问biying,目前访问一些网站需要绕过cloudfare还没有解决,代码如下: from fastapi import FastAPI, Request from fastapi.responses import StreamingResponse import httpx import uvicorn import logging# 设置日志 logging.basicConfig(level=logging.…

12寸半导体厂等保安全的设计思路

等级保护(等保)二级和三级的主要区别在于安全要求的严格程度、所需部署的安全措施和设备、以及对安全事件响应和处理的能力。以下是等保二级和三级之间的一些关键区别: 一、 安全要求严格程度: - 等保二级:适用于需要较高安全保护的信息系统,要求能够防范轻微的恶意攻击…

【Apache Doris】周FAQ集锦:第 26 期

SQL问题 Q1 doris 3.0存算分离模式下,建表的时是否需要指定表的副本数 不需要,指定了也会忽略;存算分离模式下,数据副本由远端存储去管控。 Q2 doris 通过dbeaver查询时报错:[SXXXX]… doris的错误码通常都是EXXXX&…

创建Instagram合作广告方法

将Instagram作为宣传阵地的品牌和营销人员一定对它的Branded content ads品牌内容广告很熟悉,Instagram在测试并推广创作者市场功能之后,创作者和品牌协作变得更加便利。其中的Partnership ads合作广告能结合品牌和UGC、KOL的力量,帮助品牌提…

用Python PySide6 复刻了两软件UI 做下练习

图样 1 代码 1: # -*- coding: utf-8 -*-import sys from PySide6.QtCore import (QCoreApplication, QMetaObject, QRect, QDate) from PySide6.QtGui import QIcon, QPixmap, QColor from PySide6.QtWidgets import (QApplication, QDialog, QLineEdit, QPushBut…