[英]Regex to validate and extract data from string
我正在嘗試在.net c#中創建2個正則表達式。
樣品:
/TEXT;dd-mm-yyyy;TEXT/TEXT;dd-mm-yyyy;TEXT/TEXT;dd-mm-yyyy;TEXT
要么
/TEXT;dd-mm-yyyy;TEXT
至少應輸入1次。 中間部分:dd-mm-yyyy應該是類似於1997年2月20日的日-月-年。在文本部分中,不應有任何/否則我接受regex將失敗。
我嘗試過:
string test = "/TEXT;dd-mm-yyyy;TEXT/TEXT;dd-mm-yyyy;TEXT/TEXT;dd-mm-yyyy;TEXT";
string reguexp = "[\\/(\\w+;\\w+;\\w+)+]";
foreach (System.Text.RegularExpressions.Match match in System.Text.RegularExpressions.Regex.Matches(test, reguexp))
{
Console.WriteLine("'{0}' found at index {1}.", match.Value, match.Index);
}
但是,由於無法檢測到每個字符作為匹配項,因此我想一一提取“組” /TEXT;dd-mm-yyyy;TEXT
,以便以后進行任何額外的數據處理。
我嘗試從第二個正則表達式開始,以為一旦我有了這個正則表達式,另一個就應該更容易了。
任何幫助都可以接受。 最好的祝福
您應該使用網上論壇:
var strRegex = @"(?<date>\d{2}-\d{2}-\d{4})+";
var myRegex = new Regex(strRegex, RegexOptions.None);
var strTargetString = @"01-02-2000;15-03-2018";
foreach (Match myMatch in myRegex.Matches(strTargetString))
{
var dateString = myMatch.Groups["date"].Value;
// TODO: Check dateString is valid date (e.g. with DateTime.TryParseExact(...))
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.