Regex 正则表达式
去除字符串中连续空格,多个空格变为一个?
A:使用正则匹配之后替换:
str = Regex("[\\s]+").Replace(str, " ");
在线生成正则表达式
https://ihateregex.io/
日期时间正则表达式:
/// <summary> /// 根据字符串,生成实例 /// </summary> /// <param name="marks"></param> public void GenerateModel(DepartmentCategories category, string marks) { this.DepartmentCategories = category; 姓名 = marks.Trim().Split(ConstHelper.MAO_HAO).First(); marks = marks.Replace(姓名 + ConstHelper.MAO_HAO, "").Trim(); string regexPattern = $@"\b\d{{4}}/\d{{1,2}}/\d{{1,2}} \d{{1,2}}:\d{{1,2}}:\d{{1,2}}\b"; var regResult = Regex.Match(marks, regexPattern); string dateString = string.Empty; if (regResult.Success) { dateString = regResult.Groups.Values.First().ToString().Trim(); marks = marks.Replace(dateString, string.Empty); string format = "yyyy/M/d HH:mm:ss"; DateTime dateTime; if (DateTime.TryParseExact(dateString, format, CultureInfo.InvariantCulture, DateTimeStyles.None, out dateTime)) { 操作日期 = dateTime; } else { // 转换失败 Console.WriteLine($"无法将{dateString}日期字符串转换为有效的日期。"); } } 原因 = marks.Trim(); }