Make _strptime escape regex syntax in format string to prevent use in internal regex.
diff --git a/Lib/_strptime.py b/Lib/_strptime.py
index 55391c1..0777b7e 100644
--- a/Lib/_strptime.py
+++ b/Lib/_strptime.py
@@ -373,8 +373,17 @@
         return '%s)' % regex
 
     def pattern(self, format):
-        """Return re pattern for the format string."""
+        """Return re pattern for the format string.
+        
+        Need to make sure that any characters that might be interpreted as
+        regex syntax is escaped.
+        
+        """
         processed_format = ''
+        # The sub() call escapes all characters that might be misconstrued
+        # as regex syntax.
+        regex_chars = re_compile(r"([\\.^$*+?{}\[\]|])")
+        format = regex_chars.sub(r"\\\1", format)
         whitespace_replacement = re_compile('\s+')
         format = whitespace_replacement.sub('\s*', format)
         while format.find('%') != -1: