Я пытаюсь удалить скрытые символы из строки, представляющей дату. Я использую .Net Fiddle, и вы можете увидеть строку, которая пытается выполнить ParseExact.Не удается удалить скрытые символы из строки
Это фрагмент. См. Ссылку на скрипт для рабочего кода.
var dateTime = "2015-04-14 07:30:00 PM"; //<= this throws an error from some hidden char
dateTime = Regex.Replace(dateTime, @"[^\w:\s-]", "");
Console.WriteLine(dateTime);
DateTime dateWithTime = DateTime.ParseExact(dateTime, "yyyy-MM-dd HH:mm:ss tt",
CultureInfo.InvariantCulture);
Console.WriteLine("OK");
Можете ли вы перечислить строку и напечатать номер юникода символов, чтобы можно было проверить, какой символ вызывает проблемы? –
печать символов юникода https://dotnetfiddle.net/enZv4B – user1186050
@AlexeiLevenkov: '\ s' находится в' [^] 'группе, поэтому он игнорирует' \ s', ... –