使用正規表示式匹配日期和時間

發布 科技 2024-03-09
7個回答
  1. 匿名使用者2024-01-26

    d- d- d d:d:d標準日期加時間。 滿意。

  2. 匿名使用者2024-01-25

    d- d- d d:d:d標準日期加時間。

  3. 匿名使用者2024-01-24

    最簡單的正規表示式如下:d- d- d

    但現實並沒有那麼簡單,要考慮,有效性和閏年等等。

    對於不同的應用場景,有效日期範圍會有所不同。 msdn 中定義的 datetime 物件的有效範圍為:0001-01-01 00:

    00:00 至 9999-12-31 23:59:

    59。UNIX 時間戳的 0 是 ISO 8601 指定的:1970-01-01T00:00:00Z。

    考慮前三條與年份無關的規則,年份可以統一寫成。

    下面只考慮月份和日期的常規規則。

    1.所有年份的月份,包括普通年份,都包含 1 日至 28 日。

    2.所有年份,包括普通年份,包括 2 月 29 日和 30 日。

    3.所有年份,包括普通年份,都包含 31 天。

    總而言之,這是除閏年2月29日之外的所有日期。

    接下來,考慮閏年的實施。

    1:每四年一次。

    2:100年不插閏,400年再閏。

    3:總而言之,這是所有閏年的2月29日。

    所有四條規則都已實現,彼此之間沒有影響,這四條規則是適合日期時間範圍的所有日期的常規規則。

    考慮到這個正規表示式只用於驗證,捕獲組是沒有意義的,只會占用資源,影響匹配效率,所以可以使用非捕獲組進行優化。

    資源。

  4. 匿名使用者2024-01-23

    閏年必須被判斷,我依賴它。

    為什麼必須使用規律性?

  5. 匿名使用者2024-01-22

    法定日期的格式太多。

    例如,您希望匹配 2015-11-11 之類的格式。

    正規表示式:

    d-\d-\d

    d 表示匹配數字,d 表示匹配 4 位數字,D 表示匹配 1-2 位數字。

    如果需要更精確的判斷,可以用 1[0-2]|[1-9] 表示它只能是 1-12,日期也是如此。

    但是,建議把這個判斷放在程式中,因為正規表示式只擅長匹配,判斷應該留給**。

    同樣,像 4 23 2015 這樣的格式可以與 d d d 匹配。

    如果您需要同事來匹配這兩種格式,則可以在兩者之間新增 |標誌,表示或。

    d-\d-\d|\d/\d/\d

  6. 匿名使用者2024-01-21

    正規表示式擅長匹配,而不是判斷,因此對日期的合法性做出判斷會比較複雜。

    尋求的正規表示式如下:

    說明:2015-08-(3[0-1]|[1-2][0-9]|0[8-9]) 與 8 月的法定日期匹配。

    匹配 15 年大月份的法定日期。

    與 15 年的法定日期相匹配。

    與 2 月 16 日的法定日期相匹配。

    匹配 16 年的大月份。

    匹配16年的小月亮。

    比賽 10/16。

    在中間,使用符號或符號|連線表示 或。

    如果不考慮大月份和小月份,可以稍微簡化一下(使用大月份的常規匹配),但你仍然必須至少有 4 行。

  7. 匿名使用者2024-01-20

    六到九 1,乙個介於 2 和 9 之間的整數,嘿。 眼花。

    你問。 人們仍然很難得到。 有點長... 乍一看,我不想再看了...... 學習不是很好。 再來一次。

相關回答
5個回答2024-03-09

e 's/:\+s\+/:/' -e 's/ /_/g'

第一次放置每一行"n 連續 : 和 m 後面的空格"替換為 :將此行中剩餘的相似匹配項替換為 其中 n >= 1, m>=1 >>>More

6個回答2024-03-09

/^[a-za-z_][w_]$

密碼:w$ >>>More

6個回答2024-03-09

實時測試。

獲取資料:或。 或。 或。 >>>More

8個回答2024-03-09

^(?a-z]+$a-z]+$d+$)w_]+s+$

字串至少有兩種:數字、大寫字母、小寫字母和由非空格字元組成的特殊字元 >>>More

11個回答2024-03-09

由算術運算子組成的表示式,如加法、減法、乘法、除法等,稱為算術表示式。 任何公式都稱為表示式。 例如,表示式 a>b 稱為關係表示式,例如,and not 稱為邏輯表示式。 >>>More