c#中的正則表達(dá)式和日期的使用示例
在 C# 中,正則表達(dá)式(Regular Expressions)是一種強(qiáng)大的文本處理工具,用于執(zhí)行各種字符串搜索、替換和驗(yàn)證任務(wù)。以下是一些常用的正則表達(dá)式示例及其用途:
1. 郵箱地址驗(yàn)證
string emailPattern = @"^[^@\s]+@[^@\s]+\.[^@\s]+$";
2. URL 驗(yàn)證
string urlPattern = @"^(https?:\/\/)?([\da-z\.-]+)\.([a-z\.]{2,6})([\/\w \.-]*)*\/?$";
3. 電話號(hào)碼驗(yàn)證(簡單示例)
string phonePattern = @"^\+?(\d{1,3})?[-. ]?\(?(\d{3})\)?[-. ]?(\d{3})[-. ]?(\d{4})$";
4. 身份證號(hào)碼驗(yàn)證(中國)
?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 地址驗(yàn)證
?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. 十六進(jìn)制顏色代碼驗(yàn)證
?string hexColorPattern = @"^#(?:[0-9a-fA-F]{3}){1,2}$";
8. 郵政編碼驗(yàn)證(中國)
?string postalCodePattern = @"^[0-9]{6}$";
9. 只包含字母和數(shù)字的字符串驗(yàn)證
?string alphanumericPattern = @"^[a-zA-Z0-9]+$";
10. 匹配 HTML 標(biāo)簽
?string htmlTagPattern = @"<(.*)>.*<\/\1>";
使用正則表達(dá)式示例
以下是一個(gè)使用正則表達(dá)式檢查字符串是否為有效電子郵件地址的示例:
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 來處理日期和時(shí)間。以下是一些常用的 DateTime
API:
屬性
Now
: 獲取當(dāng)前本地日期和時(shí)間。UtcNow
: 獲取協(xié)調(diào)世界時(shí)(UTC)的當(dāng)前日期和時(shí)間。Today
: 獲取今天的日期,時(shí)間部分為零點(diǎn)。
構(gòu)造函數(shù)
DateTime()
: 創(chuàng)建一個(gè)DateTime
對(duì)象,默認(rèn)為當(dāng)前時(shí)間。DateTime(long ticks)
: 從自 0001 年 1 月 1 日以來的滴答數(shù)創(chuàng)建DateTime
對(duì)象。DateTime(int year, int month, int day)
: 創(chuàng)建指定年、月、日的DateTime
對(duì)象,時(shí)間部分默認(rèn)為零點(diǎn)。DateTime(int year, int month, day, int hour, int minute)
: 創(chuàng)建指定年、月、日、時(shí)、分的DateTime
對(duì)象。
方法
Add(TimeSpan)
: 返回一個(gè)新的DateTime
對(duì)象,它是將指定的TimeSpan
值添加到當(dāng)前對(duì)象的時(shí)間。AddDays(double)
: 返回一個(gè)新的DateTime
對(duì)象,它是將指定天數(shù)添加到當(dāng)前對(duì)象的時(shí)間。AddHours(double)
: 返回一個(gè)新的DateTime
對(duì)象,它是將指定小時(shí)數(shù)添加到當(dāng)前對(duì)象的時(shí)間。AddMilliseconds(double)
: 返回一個(gè)新的DateTime
對(duì)象,它是將指定毫秒數(shù)添加到當(dāng)前對(duì)象的時(shí)間。AddMinutes(double)
: 返回一個(gè)新的DateTime
對(duì)象,它是將指定分鐘數(shù)添加到當(dāng)前對(duì)象的時(shí)間。AddMonths(int)
: 返回一個(gè)新的DateTime
對(duì)象,它是將指定月份數(shù)添加到當(dāng)前對(duì)象的時(shí)間。AddSeconds(double)
: 返回一個(gè)新的DateTime
對(duì)象,它是將指定秒數(shù)添加到當(dāng)前對(duì)象的時(shí)間。AddYears(int)
: 返回一個(gè)新的DateTime
對(duì)象,它是將指定年份數(shù)添加到當(dāng)前對(duì)象的時(shí)間。CompareTo(Object)
: 比較兩個(gè)DateTime
對(duì)象的順序。Equals(Object)
: 判斷兩個(gè)DateTime
對(duì)象是否相等。IsDaylightSavingTime()
: 判斷當(dāng)前DateTime
對(duì)象是否處于夏令時(shí)。Subtract(TimeSpan)
: 返回一個(gè)新的DateTime
對(duì)象,它是當(dāng)前對(duì)象的時(shí)間減去指定的TimeSpan
值。ToString()
: 將DateTime
對(duì)象轉(zhuǎn)換為字符串。ToString(String)
: 使用指定的格式字符串將DateTime
對(duì)象轉(zhuǎn)換為字符串。ToLocalTime()
: 將DateTime
對(duì)象從 UTC 時(shí)間轉(zhuǎn)換為本地時(shí)間。ToUniversalTime()
: 將DateTime
對(duì)象從本地時(shí)間轉(zhuǎn)換為 UTC 時(shí)間。
靜態(tài)方法
DaysInMonth(int year, int month)
: 確定指定年份和月份的天數(shù)。IsLeapYear(int year)
: 確定指定年份是否為閏年。
操作符
==
和!=
: 比較兩個(gè)DateTime
對(duì)象是否相等或不相等。-
: 從DateTime
對(duì)象中減去TimeSpan
對(duì)象。>
和<
: 比較兩個(gè)DateTime
對(duì)象的大小。
格式化方法
DateTimeFormatInfo
類提供了格式化DateTime
對(duì)象的方法,例如GetMonthName(int)
和GetDayName(int)
。
使用這些 API,你可以執(zhí)行日期和時(shí)間的算術(shù)、格式化、比較和轉(zhuǎn)換等操作。例如:
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");
到此這篇關(guān)于c#中的正則表達(dá)式和日期的使用的文章就介紹到這了,更多相關(guān)c#使用正則表達(dá)式內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
c#之圓形無標(biāo)題欄橢圓窗體的實(shí)現(xiàn)詳解
本篇文章是對(duì)c#中圓形無標(biāo)題欄橢圓窗體的實(shí)現(xiàn)方法進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下2013-06-06C#實(shí)現(xiàn)自定義ListBox背景的示例詳解
這篇文章主要為大家詳細(xì)介紹了如何利用C#實(shí)現(xiàn)自定義ListBox背景,文中的示例代碼講解詳細(xì),對(duì)我們學(xué)習(xí)C#有一定的幫助,感興趣的小伙伴可以跟隨小編一起了解一下2022-12-12C#使用ZXing實(shí)現(xiàn)二維碼和條形碼的生成
這篇文章主要為大家詳細(xì)介紹了C#如何使用ZXing實(shí)現(xiàn)二維碼和條形碼的生成與識(shí)別,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下2023-11-11