如何判斷C 正規表示式輸入日期格式正確

2025-07-28 11:17:16 字數 2341 閱讀 1838

c# 如何判斷乙個字串是不是日期型資料?

1樓:網友

string date = "2001-1-5";

datetime dt;

if (,out dt))

else正則可真是沒有你用try來的效率高,而且正則只能用來判斷指定的字串是否符合一種格式規範,而日期還需要判斷閏年,閏月等等非常複雜。所以,對於轉換日期,正規表示式是不適用的。

2樓:網友

來晚了一般都是用型別轉換 轉換成功就是,不成功就不是。

3樓:比北極熊還熊

轉換成功就是,不成功就不是。

4樓:網友

別用try和轉換,用正則。節約資源,提高效率是王道。

5樓:和素蘭祝巳

regex

reg=newregex(@"^\d+\.d+$");

if("輸入的是小數");

以上匹配,只有包含小數點,且前面後面都只包含數字的,才會認定為小數。

你的判斷沒考慮非數字。

正規表示式,判斷格式為yyyymmdd的日期格式!

6樓:網友

/^\d-(?0\d|1[0-2])-0-2]\d|3[01])(01]\d|2[0-3])\0-5]\d\:[0-5]\d)?$/

唯一的漏洞就是不管是幾月份,都可以有31天,這個比較難處理。如果這個也需要嚴格驗證,那最優的方案,應該是用多個正則。乙個正則也不是不行,只是效能太差,不划算。望採納。

求c#中乙個驗證日期格式的正規表示式

7樓:網友

給你個例子,是乙個驗證控制項驗證textbox中的時間是否合法。

其中的正規表示式你可以拿出去用。

8樓:網友

msdn中有現成的正規表示式是按照例子說明的哦例如:(年[-/,]月[-/,]日)|(月[-/,]日[-/,]年)|(日[-/,]月[-/,]年)

我寫的這個是最簡單的了。

請各位改善,我也學習一下。

暈,我好像寫錯了。跑題了,呵呵。

不過提供你乙個新思路:

str)可以幫你check,如果拋異常了,顯然錯了。

2種異常:給你乙個參考:

如果要check 12/30/1969

那麼可以用下邊的regex expression(\d\d)[-/](\d\d)[-/](\d\d(?:d\d)?)

9樓:網友

一般在c#中是datatime型的資料存檔的時候,我都會把格式做一下再存。

example:

ajax傳回要存文字的值otxtdate後:

hh:mm:ss);

大概是這個樣子。

10樓:網友

驗證日期有專門的方法,不應該用正則。

c#怎麼判斷輸入的是否是正規表示式

11樓:網友

使用判斷,如果返回真就是正規表示式,如果否就不是。

求c# 中驗證日期的正規表示式

12樓:百大o爺

/^((1|\d)\d)-(0?|1|\d|3))|1|\d)\d)-(0?|1|\d|30))|1|\d)\d)-0?

2-(0?|1\d|2))|1|\d)(0||)16||)00))-0?2-29-))/

這個能滿足你的要求。自己測試一下。

13樓:石亮東

用函式,不然像樓上那樣能看懂的不多。

不過最後用日期控制項。

asp.net mm/dd/yyyy日期格式的正規表示式

14樓:藤原子大雄

這個程式的正規表示式是有問題的,比如 2009-12-33 也會被認為是合法。

正確的正規表示式(包括測試**):

var str = '2009-12-33';

if(?:19|20)\d\d)-(0[1-9]|1[012])-0[1-9]|[12][0-9]|3[01])$/)) else

15樓:網友

c#語法:@"^(0[1-9]|1[0-2])/(0[1-9]|[12][0-9]|30|31)/([1-9]\d)$"

語法:"^(0[1-9]|1[0-2])/(0[1-9]|[12][0-9]|30|31)/([1-9]\d)$"

年只能匹配1000年以後(包括1000年)

正規表示式特殊符號 冒號,如何使用正規表示式提取冒號後面的內容

與其輸bai入之後再判斷,不如du限制輸入,當前前zhi提是這dao些特殊符號是無內效的 如果你需 容要這些特殊符號只是想暫時去除,應該是用for來一個一個找,效率高點,而不是if txt.indexof 0 txt.indexof 0 寫一大串的條件 你直接定義一個chararray,加入 之類的...

正規表示式如何匹配出最短字串,正規表示式如何匹配除某些字串以外的所有字元

當正規表示式中包含能接受重複的限定符時,通常的行為是 在使整個表示式能得到匹配的前提下 匹配儘可能多的字元。考慮這個表示式 a.b,它將會匹配最長的以a開始,以b結束的字串。如果用它來搜尋aabab的話,它會匹配整個字串aabab。這被稱為貪婪匹配。有時,我們更需要懶惰匹配,也就是匹配儘可能少的字元...

求正規表示式分割aa ee得到,求正規表示式 分割 aa bb cc dd ee 得到 aa , bb , cc , dd , ee

str.match w g str.match w u4e00 u9fa5 g 支援中文 aa bb 標準的表示 包含aa,且包含bb 的模式,對aa和bb的出現順序無要求,但這是偵測,不能 獲,要想捕獲內容,就需要把邊界定義清楚。在你沒有說清楚的時候,暫以 包含aa和bb的一行文字 為捕獲內容來理...