Вы можете использовать DateTime.ParseExact для анализа строки.
Если вы всегда знаете часовой пояс, вы можете использовать следующие
var paypalDateTime = DateTime.ParseExact("10:52:32 Jan 17, 2019 PST", "HH:mm:ss MMM dd, yyyy PST", CultureInfo.InvariantCulture);
Console.WriteLine(paypalDateTime.ToString());
// Output: 1/17/2019 10:52:32
Если вы хотите
var inputDates = new [] {
"10:52:32 Jan 17, 2019 PST",
"10:52:32 Jan 17, 2019 GMT",
"10:52:32 Jan 17, 2019 UT",
"10:52:32 Jan 17, 2019 NZST"
};
foreach (var inputDate in inputDates)
{
var timeZone = inputDate.Substring(inputDate.LastIndexOf(" ") + 1);
var paypalDateTime = DateTime.ParseExact(inputDate.Substring(0, inputDate.LastIndexOf(" ")), "HH:mm:ss MMM dd, yyyy", CultureInfo.InvariantCulture);
// Here you can handle the timezone
Console.WriteLine(paypalDateTime.ToString() + " in timezone " + timeZone);
}
Выходы
1/17/2019 10:52:32 AM in timezone PST
1/17/2019 10:52:32 AM in timezone GMT
1/17/2019 10:52:32 AM in timezone UT
1/17/2019 10:52:32 AM in timezone NZST