From 6645a3be40e573459d048937bf21bf40a19e4974 Mon Sep 17 00:00:00 2001 From: Lance Stout Date: Fri, 27 Jul 2012 11:24:01 -0700 Subject: [PATCH] Compile JID pattern regex. --- sleekxmpp/jid.py | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/sleekxmpp/jid.py b/sleekxmpp/jid.py index 9e9c0d0b..015d95f8 100644 --- a/sleekxmpp/jid.py +++ b/sleekxmpp/jid.py @@ -29,7 +29,9 @@ ILLEGAL_CHARS = '\x00\x01\x02\x03\x04\x05\x06\x07\x08\t\n\x0b\x0c\r' + \ #: The basic regex pattern that a JID must match in order to determine #: the local, domain, and resource parts. This regex does NOT do any #: validation, which requires application of nodeprep, resourceprep, etc. -JID_PATTERN = "^(?:([^\"&'/:<>@]{1,1023})@)?([^/@]{1,1023})(?:/(.{1,1023}))?$" +JID_PATTERN = re.compile( + "^(?:([^\"&'/:<>@]{1,1023})@)?([^/@]{1,1023})(?:/(.{1,1023}))?$" +) #: The set of escape sequences for the characters not allowed by nodeprep. JID_ESCAPE_SEQUENCES = set(['\\20', '\\22', '\\26', '\\27', '\\2f', @@ -118,7 +120,7 @@ def _parse_jid(data): :returns: tuple of the validated local, domain, and resource strings """ - match = re.match(JID_PATTERN, data) + match = JID_PATTERN.match(data) if not match: raise InvalidJID('JID could not be parsed')