c#中的正则表达式和日期的使用(超全)
创始人
2024-11-15 02:02:42
0

在 C# 中,正则表达式(Regular Expressions)是一种强大的文本处理工具,用于执行各种字符串搜索、替换和验证任务。以下是一些常用的正则表达式示例及其用途:

1. 邮箱地址验证

string emailPattern = @"^[^@\s]+@[^@\s]+\.[^@\s]+$";

2. URL 验证

string urlPattern = @"^(https?:\/\/)?([\da-z\.-]+)\.([a-z\.]{2,6})([\/\w \.-]*)*\/?$";

3. 电话号码验证(简单示例)

string phonePattern = @"^\+?(\d{1,3})?[-. ]?\(?(\d{3})\)?[-. ]?(\d{3})[-. ]?(\d{4})$";

4. 身份证号码验证(中国)

string idCardPattern = @"^[1-9]\d{5}(18|19|20)\d{2}(0[1-9]|1[012])(0[1-9]|[12]\d|3[01])\d{3}[Xx0-9]$";

5. IP 地址验证

string ipPattern = @"^((25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$";

6. 空白行检测

string blankLinePattern = @"^\s*$";

7. 十六进制颜色代码验证

string hexColorPattern = @"^#(?:[0-9a-fA-F]{3}){1,2}$";

8. 邮政编码验证(中国)

string postalCodePattern = @"^[0-9]{6}$";

9. 只包含字母和数字的字符串验证

string alphanumericPattern = @"^[a-zA-Z0-9]+$";

10. 匹配 HTML 标签

string htmlTagPattern = @"<(.*)>.*<\/\1>";

使用正则表达式示例

以下是一个使用正则表达式检查字符串是否为有效电子邮件地址的示例:

using System; using System.Text.RegularExpressions; ​ class Program {     static void Main()     {         string email = "example@example.com";         bool isValid = Regex.IsMatch(email, @"^[^@\s]+@[^@\s]+\.[^@\s]+$");         Console.WriteLine(isValid ? "Valid email." : "Invalid email.");     } }

datetime

DateTime 类在 C# 中提供了大量的 API 来处理日期和时间。以下是一些常用的 DateTime API:

属性

  • Now: 获取当前本地日期和时间。

  • UtcNow: 获取协调世界时(UTC)的当前日期和时间。

  • Today: 获取今天的日期,时间部分为零点。

构造函数

  • DateTime(): 创建一个 DateTime 对象,默认为当前时间。

  • DateTime(long ticks): 从自 0001 年 1 月 1 日以来的滴答数创建 DateTime 对象。

  • DateTime(int year, int month, int day): 创建指定年、月、日的 DateTime 对象,时间部分默认为零点。

  • DateTime(int year, int month, day, int hour, int minute): 创建指定年、月、日、时、分的 DateTime 对象。

方法

  • Add(TimeSpan): 返回一个新的 DateTime 对象,它是将指定的 TimeSpan 值添加到当前对象的时间。

  • AddDays(double): 返回一个新的 DateTime 对象,它是将指定天数添加到当前对象的时间。

  • AddHours(double): 返回一个新的 DateTime 对象,它是将指定小时数添加到当前对象的时间。

  • AddMilliseconds(double): 返回一个新的 DateTime 对象,它是将指定毫秒数添加到当前对象的时间。

  • AddMinutes(double): 返回一个新的 DateTime 对象,它是将指定分钟数添加到当前对象的时间。

  • AddMonths(int): 返回一个新的 DateTime 对象,它是将指定月份数添加到当前对象的时间。

  • AddSeconds(double): 返回一个新的 DateTime 对象,它是将指定秒数添加到当前对象的时间。

  • AddYears(int): 返回一个新的 DateTime 对象,它是将指定年份数添加到当前对象的时间。

  • CompareTo(Object): 比较两个 DateTime 对象的顺序。

  • Equals(Object): 判断两个 DateTime 对象是否相等。

  • IsDaylightSavingTime(): 判断当前 DateTime 对象是否处于夏令时。

  • Subtract(TimeSpan): 返回一个新的 DateTime 对象,它是当前对象的时间减去指定的 TimeSpan 值。

  • ToString(): 将 DateTime 对象转换为字符串。

  • ToString(String): 使用指定的格式字符串将 DateTime 对象转换为字符串。

  • ToLocalTime(): 将 DateTime 对象从 UTC 时间转换为本地时间。

  • ToUniversalTime(): 将 DateTime 对象从本地时间转换为 UTC 时间。

静态方法

  • DaysInMonth(int year, int month): 确定指定年份和月份的天数。

  • IsLeapYear(int year): 确定指定年份是否为闰年。

操作符

  • ==!=: 比较两个 DateTime 对象是否相等或不相等。

  • -: 从 DateTime 对象中减去 TimeSpan 对象。

  • ><: 比较两个 DateTime 对象的大小。

格式化方法

  • DateTimeFormatInfo 类提供了格式化 DateTime 对象的方法,例如 GetMonthName(int)GetDayName(int)

使用这些 API,你可以执行日期和时间的算术、格式化、比较和转换等操作。例如:

DateTime now = DateTime.Now; DateTime tomorrow = now.AddDays(1); int daysInMonth = DateTime.DaysInMonth(2024, 7); bool isLeapYear = DateTime.IsLeapYear(2024); string formattedDate = now.ToString("yyyy-MM-dd");

相关内容

热门资讯

透视存在!pokemmo脚本辅... 透视存在!pokemmo脚本辅助器下载(透视)都是存在有挂(详细辅助线上教程)1、在ai机器人技巧中...
9分钟了解!微信卡农辅助,八闽... 9分钟了解!微信卡农辅助,八闽福建辅助(真是存在有挂)1、微信卡农辅助系统规律教程、微信卡农辅助辅助...
透视黑科技!wepoker怎么... 透视黑科技!wepoker怎么设置盖牌(透视)永久脚本辅助挂(详细辅助透明挂教程)1、wepoker...
透视讲解"wepok... 透视讲解"wepoker俱乐部辅助"详细辅助科技教程(总是有挂)1、wepoker俱乐部辅助系统规律...
第五分钟了解!水鱼天下脚本,九... 第五分钟了解!水鱼天下脚本,九九山城插件程序(本来是有挂)1、操作简单,无需注册,只需要使用手机进行...
透视最新!wepoker脚本下... 透视最新!wepoker脚本下载(透视)原来有挂(详细辅助2025新版技巧);1、wepoker脚本...
透视代打!德扑HHpoker有... 透视代打!德扑HHpoker有挂吗(透视)永久脚本辅助app(详细辅助必备教程)1、操作简单,无需注...
第二分钟了解!九九联盟破解版,... 第二分钟了解!九九联盟破解版,点我达辅助(真是是有挂)1、起透看视 九九联盟破解版透明视辅助2、随意...
透视辅助"wepok... 透视辅助"wepoker作弊辅助"详细辅助科技教程(原来是有挂);1、玩家可以在wepoker作弊辅...
透视最新!wepoker怎么破... 透视最新!wepoker怎么破解游戏(透视)竟然有挂(详细辅助必赢教程)1、每一步都需要思考,不同水...