@Hanmac (Hans Mackowiak)
Yeah, we can use strptime, but we still have problem, because the results is still the same, in details:
Time.strptime("Ends from 28 Jun 2018 12:00 BST".gsub(/Ends from/, "").lstrip, "%d %b %Y %H:%M %Z").zone
"MSK"
Time.strptime("Ends from 28 Jun 2018 12:00 BST".gsub(/Ends from/, "").lstrip, "%d %b %Y %H:%M %Z").utc.to_s
"2018-06-28 09:00:00 UTC"
This is incorrect results. The correctly results of this string correctly gather only by DateTime object:
DateTime.strptime("Ends from 28 Jun 2018 12:00 BST".gsub(/Ends from/, "").lstrip, "%d %b %Y %H:%M %Z").to_time.utc.to_s
"2018-06-28 11:00:00 UTC"
Yes, perhaps they looks like are different time zones, and because of this we got this behavior.
Different time zone with common abbr:
https://www.timeanddate.com/time/zones/bst
https://www.timeanddate.com/time/zones/bst-bougainville
but the problem is, the behavior is different for all three objects.
They can misunderstand the time zone, but should not the behavior be the same?
Thank you for your time.