[英]Making regex for preg_match greedy to only accept certain values?
我有一個CSV文件,其中包含一個表示時間/日期的字符串,如下所示:
20190816T16:10:10
我已經為preg_match創建了以下正則表達式,但希望將小時/分鍾和秒設置為僅允許某些數字(例如,小時為24小時制,因此僅接受00-23,而分鍾和秒僅接受00-59)
/\\d{8}[AZ]\\d{2}:\\d{2}:\\d{2}/
誰能建議如何更改此設置以確保此正則表達式與我要實現的結構匹配?
此正則表達式應符合您的結構:
\d{8}[A-Z]([0-9]|0[0-9]|1[0-9]|2[0-3]):[0-5][0-9]:[0-5][0-9]
您可以將范圍 (例如: [0-9]
)與非捕獲組一起使用(小時和分鍾容易匹配):
// 00 to 23 00 to 59
/\d{8}[A-Z](?:[01]\d|2[0-3]):[0-5]\d:[0-5]\d/
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.