ネタ元
本気でメールアドレスを正規表現でマッチさせようとすると、こんな感じになってしまう例
http://www.din.or.jp/~ohzaki/mail_regex.htm
(?:(?:(?:(?:(?:(?:[\x20\x09]*(?:\x0D\x0A))?[\x20\x09]+|(?:[\x20\x0 9]+(?:(?:\x0D\x0A)[\x20\x09]+)*))?(\((?:(?:(?:[\x20\x09]*(?:\x0D\x 0A))?[\x20\x09]+|(?:[\x20\x09]+(?:(?:\x0D\x0A)[\x20\x09]+)*))?(?:( ?:[\x21-\x27\x2A-\x5B\x5D-\x7E]|[\x01-\x08\x0B\x0C\x0E-\x1F\x7F])| (?:\\(?:[\x21-\x7E]|[\x20\x09])|(?:\\(?:\x00|[\x01-\x08\x0B\x0C\x0 E-\x1F\x7F]|\x0A|\x0D)))|(?-1)))*(?:(?:[\x20\x09]*(?:\x0D\x0A))?[\ x20\x09]+|(?:[\x20\x09]+(?:(?:\x0D\x0A)[\x20\x09]+)*))?\)))+(?:(?: [\x20\x09]*(?:\x0D\x0A))?[\x20\x09]+|(?:[\x20\x09]+(?:(?:\x0D\x0A) [\x20\x09]+)*))?|(?:(?:[\x20\x09]*(?:\x0D\x0A))?[\x20\x09]+|(?:[\x 20\x09]+(?:(?:\x0D\x0A)[\x20\x09]+)*)))?(?:[A-Za-z0-9!#$%&'*+\-/=? ^_`{|}~]+(?:\.[A-Za-z0-9!#$%&'*+\-/=?^_`{|}~]+)*)(?:(?:(?:(?:[\x20 \x09]*(?:\x0D\x0A))?[\x20\x09]+|(?:[\x20\x09]+(?:(?:\x0D\x0A)[\x20 \x09]+)*))?(\((?:(?:(?:[\x20\x09]*(?:\x0D\x0A))?[\x20\x09]+|(?:[\x 20\x09]+(?:(?:\x0D\x0A)[\x20\x09]+)*))?(?:(?:[\x21-\x27\x2A-\x5B\x 5D-\x7E]|[\x01-\x08\x0B\x0C\x0E-\x1F\x7F])|(?:\\(?:[\x21-\x7E]|[\x 20\x09])|(?:\\(?:\x00|[\x01-\x08\x0B\x0C\x0E-\x1F\x7F]|\x0A|\x0D)) )|(?-1)))*(?:(?:[\x20\x09]*(?:\x0D\x0A))?[\x20\x09]+|(?:[\x20\x09] +(?:(?:\x0D\x0A)[\x20\x09]+)*))?\)))+(?:(?:[\x20\x09]*(?:\x0D\x0A) )?[\x20\x09]+|(?:[\x20\x09]+(?:(?:\x0D\x0A)[\x20\x09]+)*))?|(?:(?: [\x20\x09]*(?:\x0D\x0A))?[\x20\x09]+|(?:[\x20\x09]+(?:(?:\x0D\x0A) [\x20\x09]+)*)))?)|(?:(?:(?:(?:(?:[\x20\x09]*(?:\x0D\x0A))?[\x20\x 09]+|(?:[\x20\x09]+(?:(?:\x0D\x0A)[\x20\x09]+)*))?(\((?:(?:(?:[\x2 0\x09]*(?:\x0D\x0A))?[\x20\x09]+|(?:[\x20\x09]+(?:(?:\x0D\x0A)[\x2 0\x09]+)*))?(?:(?:[\x21-\x27\x2A-\x5B\x5D-\x7E]|[\x01-\x08\x0B\x0C \x0E-\x1F\x7F])|(?:\\(?:[\x21-\x7E]|[\x20\x09])|(?:\\(?:\x00|[\x01 -\x08\x0B\x0C\x0E-\x1F\x7F]|\x0A|\x0D)))|(?-1)))*(?:(?:[\x20\x09]* (?:\x0D\x0A))?[\x20\x09]+|(?:[\x20\x09]+(?:(?:\x0D\x0A)[\x20\x09]+ )*))?\)))+(?:(?:[\x20\x09]*(?:\x0D\x0A))?[\x20\x09]+|(?:[\x20\x09] +(?:(?:\x0D\x0A)[\x20\x09]+)*))?|(?:(?:[\x20\x09]*(?:\x0D\x0A))?[\ x20\x09]+|(?:[\x20\x09]+(?:(?:\x0D\x0A)[\x20\x09]+)*)))?"(?:(?:(?: [\x20\x09]*(?:\x0D\x0A))?[\x20\x09]+|(?:[\x20\x09]+(?:(?:\x0D\x0A) [\x20\x09]+)*))?(?:(?:[\x21\x23-\x5B\x5D-\x7E]|[\x01-\x08\x0B\x0C\ x0E-\x1F\x7F])|(?:\\(?:[\x21-\x7E]|[\x20\x09])|(?:\\(?:\x00|[\x01- \x08\x0B\x0C\x0E-\x1F\x7F]|\x0A|\x0D)))))*(?:(?:[\x20\x09]*(?:\x0D \x0A))?[\x20\x09]+|(?:[\x20\x09]+(?:(?:\x0D\x0A)[\x20\x09]+)*))?"( ?:(?:(?:(?:[\x20\x09]*(?:\x0D\x0A))?[\x20\x09]+|(?:[\x20\x09]+(?:( ?:\x0D\x0A)[\x20\x09]+)*))?(\((?:(?:(?:[\x20\x09]*(?:\x0D\x0A))?[\ x20\x09]+|(?:[\x20\x09]+(?:(?:\x0D\x0A)[\x20\x09]+)*))?(?:(?:[\x21 -\x27\x2A-\x5B\x5D-\x7E]|[\x01-\x08\x0B\x0C\x0E-\x1F\x7F])|(?:\\(? :[\x21-\x7E]|[\x20\x09])|(?:\\(?:\x00|[\x01-\x08\x0B\x0C\x0E-\x1F\ x7F]|\x0A|\x0D)))|(?-1)))*(?:(?:[\x20\x09]*(?:\x0D\x0A))?[\x20\x09 ]+|(?:[\x20\x09]+(?:(?:\x0D\x0A)[\x20\x09]+)*))?\)))+(?:(?:[\x20\x 09]*(?:\x0D\x0A))?[\x20\x09]+|(?:[\x20\x09]+(?:(?:\x0D\x0A)[\x20\x 09]+)*))?|(?:(?:[\x20\x09]*(?:\x0D\x0A))?[\x20\x09]+|(?:[\x20\x09] +(?:(?:\x0D\x0A)[\x20\x09]+)*)))?)|(?:(?:(?:(?:(?:(?:(?:[\x20\x09] *(?:\x0D\x0A))?[\x20\x09]+|(?:[\x20\x09]+(?:(?:\x0D\x0A)[\x20\x09] +)*))?(\((?:(?:(?:[\x20\x09]*(?:\x0D\x0A))?[\x20\x09]+|(?:[\x20\x0 9]+(?:(?:\x0D\x0A)[\x20\x09]+)*))?(?:(?:[\x21-\x27\x2A-\x5B\x5D-\x 7E]|[\x01-\x08\x0B\x0C\x0E-\x1F\x7F])|(?:\\(?:[\x21-\x7E]|[\x20\x0 9])|(?:\\(?:\x00|[\x01-\x08\x0B\x0C\x0E-\x1F\x7F]|\x0A|\x0D)))|(?- 1)))*(?:(?:[\x20\x09]*(?:\x0D\x0A))?[\x20\x09]+|(?:[\x20\x09]+(?:( ?:\x0D\x0A)[\x20\x09]+)*))?\)))+(?:(?:[\x20\x09]*(?:\x0D\x0A))?[\x 20\x09]+|(?:[\x20\x09]+(?:(?:\x0D\x0A)[\x20\x09]+)*))?|(?:(?:[\x20 \x09]*(?:\x0D\x0A))?[\x20\x09]+|(?:[\x20\x09]+(?:(?:\x0D\x0A)[\x20 \x09]+)*)))?[A-Za-z0-9!#$%&'*+\-/=?^_`{|}~]+(?:(?:(?:(?:[\x20\x09] *(?:\x0D\x0A))?[\x20\x09]+|(?:[\x20\x09]+(?:(?:\x0D\x0A)[\x20\x09] +)*))?(\((?:(?:(?:[\x20\x09]*(?:\x0D\x0A))?[\x20\x09]+|(?:[\x20\x0 9]+(?:(?:\x0D\x0A)[\x20\x09]+)*))?(?:(?:[\x21-\x27\x2A-\x5B\x5D-\x 7E]|[\x01-\x08\x0B\x0C\x0E-\x1F\x7F])|(?:\\(?:[\x21-\x7E]|[\x20\x0 9])|(?:\\(?:\x00|[\x01-\x08\x0B\x0C\x0E-\x1F\x7F]|\x0A|\x0D)))|(?- 1)))*(?:(?:[\x20\x09]*(?:\x0D\x0A))?[\x20\x09]+|(?:[\x20\x09]+(?:( ?:\x0D\x0A)[\x20\x09]+)*))?\)))+(?:(?:[\x20\x09]*(?:\x0D\x0A))?[\x 20\x09]+|(?:[\x20\x09]+(?:(?:\x0D\x0A)[\x20\x09]+)*))?|(?:(?:[\x20 \x09]*(?:\x0D\x0A))?[\x20\x09]+|(?:[\x20\x09]+(?:(?:\x0D\x0A)[\x20 \x09]+)*)))?)|(?:(?:(?:(?:(?:[\x20\x09]*(?:\x0D\x0A))?[\x20\x09]+| (?:[\x20\x09]+(?:(?:\x0D\x0A)[\x20\x09]+)*))?(\((?:(?:(?:[\x20\x09 ]*(?:\x0D\x0A))?[\x20\x09]+|(?:[\x20\x09]+(?:(?:\x0D\x0A)[\x20\x09 ]+)*))?(?:(?:[\x21-\x27\x2A-\x5B\x5D-\x7E]|[\x01-\x08\x0B\x0C\x0E- \x1F\x7F])|(?:\\(?:[\x21-\x7E]|[\x20\x09])|(?:\\(?:\x00|[\x01-\x08 \x0B\x0C\x0E-\x1F\x7F]|\x0A|\x0D)))|(?-1)))*(?:(?:[\x20\x09]*(?:\x 0D\x0A))?[\x20\x09]+|(?:[\x20\x09]+(?:(?:\x0D\x0A)[\x20\x09]+)*))? \)))+(?:(?:[\x20\x09]*(?:\x0D\x0A))?[\x20\x09]+|(?:[\x20\x09]+(?:( ?:\x0D\x0A)[\x20\x09]+)*))?|(?:(?:[\x20\x09]*(?:\x0D\x0A))?[\x20\x 09]+|(?:[\x20\x09]+(?:(?:\x0D\x0A)[\x20\x09]+)*)))?"(?:(?:(?:[\x20 \x09]*(?:\x0D\x0A))?[\x20\x09]+|(?:[\x20\x09]+(?:(?:\x0D\x0A)[\x20 \x09]+)*))?(?:(?:[\x21\x23-\x5B\x5D-\x7E]|[\x01-\x08\x0B\x0C\x0E-\ x1F\x7F])|(?:\\(?:[\x21-\x7E]|[\x20\x09])|(?:\\(?:\x00|[\x01-\x08\ x0B\x0C\x0E-\x1F\x7F]|\x0A|\x0D)))))*(?:(?:[\x20\x09]*(?:\x0D\x0A) )?[\x20\x09]+|(?:[\x20\x09]+(?:(?:\x0D\x0A)[\x20\x09]+)*))?"(?:(?: (?:(?:[\x20\x09]*(?:\x0D\x0A))?[\x20\x09]+|(?:[\x20\x09]+(?:(?:\x0 D\x0A)[\x20\x09]+)*))?(\((?:(?:(?:[\x20\x09]*(?:\x0D\x0A))?[\x20\x 09]+|(?:[\x20\x09]+(?:(?:\x0D\x0A)[\x20\x09]+)*))?(?:(?:[\x21-\x27 \x2A-\x5B\x5D-\x7E]|[\x01-\x08\x0B\x0C\x0E-\x1F\x7F])|(?:\\(?:[\x2 1-\x7E]|[\x20\x09])|(?:\\(?:\x00|[\x01-\x08\x0B\x0C\x0E-\x1F\x7F]| \x0A|\x0D)))|(?-1)))*(?:(?:[\x20\x09]*(?:\x0D\x0A))?[\x20\x09]+|(? :[\x20\x09]+(?:(?:\x0D\x0A)[\x20\x09]+)*))?\)))+(?:(?:[\x20\x09]*( ?:\x0D\x0A))?[\x20\x09]+|(?:[\x20\x09]+(?:(?:\x0D\x0A)[\x20\x09]+) *))?|(?:(?:[\x20\x09]*(?:\x0D\x0A))?[\x20\x09]+|(?:[\x20\x09]+(?:( ?:\x0D\x0A)[\x20\x09]+)*)))?))(?:\.(?:(?:(?:(?:(?:(?:[\x20\x09]*(? :\x0D\x0A))?[\x20\x09]+|(?:[\x20\x09]+(?:(?:\x0D\x0A)[\x20\x09]+)* ))?(\((?:(?:(?:[\x20\x09]*(?:\x0D\x0A))?[\x20\x09]+|(?:[\x20\x09]+ (?:(?:\x0D\x0A)[\x20\x09]+)*))?(?:(?:[\x21-\x27\x2A-\x5B\x5D-\x7E] |[\x01-\x08\x0B\x0C\x0E-\x1F\x7F])|(?:\\(?:[\x21-\x7E]|[\x20\x09]) |(?:\\(?:\x00|[\x01-\x08\x0B\x0C\x0E-\x1F\x7F]|\x0A|\x0D)))|(?-1)) )*(?:(?:[\x20\x09]*(?:\x0D\x0A))?[\x20\x09]+|(?:[\x20\x09]+(?:(?:\ x0D\x0A)[\x20\x09]+)*))?\)))+(?:(?:[\x20\x09]*(?:\x0D\x0A))?[\x20\ x09]+|(?:[\x20\x09]+(?:(?:\x0D\x0A)[\x20\x09]+)*))?|(?:(?:[\x20\x0 9]*(?:\x0D\x0A))?[\x20\x09]+|(?:[\x20\x09]+(?:(?:\x0D\x0A)[\x20\x0 9]+)*)))?[A-Za-z0-9!#$%&'*+\-/=?^_`{|}~]+(?:(?:(?:(?:[\x20\x09]*(? :\x0D\x0A))?[\x20\x09]+|(?:[\x20\x09]+(?:(?:\x0D\x0A)[\x20\x09]+)* ))?(\((?:(?:(?:[\x20\x09]*(?:\x0D\x0A))?[\x20\x09]+|(?:[\x20\x09]+ (?:(?:\x0D\x0A)[\x20\x09]+)*))?(?:(?:[\x21-\x27\x2A-\x5B\x5D-\x7E] |[\x01-\x08\x0B\x0C\x0E-\x1F\x7F])|(?:\\(?:[\x21-\x7E]|[\x20\x09]) |(?:\\(?:\x00|[\x01-\x08\x0B\x0C\x0E-\x1F\x7F]|\x0A|\x0D)))|(?-1)) )*(?:(?:[\x20\x09]*(?:\x0D\x0A))?[\x20\x09]+|(?:[\x20\x09]+(?:(?:\ x0D\x0A)[\x20\x09]+)*))?\)))+(?:(?:[\x20\x09]*(?:\x0D\x0A))?[\x20\ x09]+|(?:[\x20\x09]+(?:(?:\x0D\x0A)[\x20\x09]+)*))?|(?:(?:[\x20\x0 9]*(?:\x0D\x0A))?[\x20\x09]+|(?:[\x20\x09]+(?:(?:\x0D\x0A)[\x20\x0 9]+)*)))?)|(?:(?:(?:(?:(?:[\x20\x09]*(?:\x0D\x0A))?[\x20\x09]+|(?: [\x20\x09]+(?:(?:\x0D\x0A)[\x20\x09]+)*))?(\((?:(?:(?:[\x20\x09]*( ?:\x0D\x0A))?[\x20\x09]+|(?:[\x20\x09]+(?:(?:\x0D\x0A)[\x20\x09]+) *))?(?:(?:[\x21-\x27\x2A-\x5B\x5D-\x7E]|[\x01-\x08\x0B\x0C\x0E-\x1 F\x7F])|(?:\\(?:[\x21-\x7E]|[\x20\x09])|(?:\\(?:\x00|[\x01-\x08\x0 B\x0C\x0E-\x1F\x7F]|\x0A|\x0D)))|(?-1)))*(?:(?:[\x20\x09]*(?:\x0D\ x0A))?[\x20\x09]+|(?:[\x20\x09]+(?:(?:\x0D\x0A)[\x20\x09]+)*))?\)) )+(?:(?:[\x20\x09]*(?:\x0D\x0A))?[\x20\x09]+|(?:[\x20\x09]+(?:(?:\ x0D\x0A)[\x20\x09]+)*))?|(?:(?:[\x20\x09]*(?:\x0D\x0A))?[\x20\x09] +|(?:[\x20\x09]+(?:(?:\x0D\x0A)[\x20\x09]+)*)))?"(?:(?:(?:[\x20\x0 9]*(?:\x0D\x0A))?[\x20\x09]+|(?:[\x20\x09]+(?:(?:\x0D\x0A)[\x20\x0 9]+)*))?(?:(?:[\x21\x23-\x5B\x5D-\x7E]|[\x01-\x08\x0B\x0C\x0E-\x1F \x7F])|(?:\\(?:[\x21-\x7E]|[\x20\x09])|(?:\\(?:\x00|[\x01-\x08\x0B \x0C\x0E-\x1F\x7F]|\x0A|\x0D)))))*(?:(?:[\x20\x09]*(?:\x0D\x0A))?[ \x20\x09]+|(?:[\x20\x09]+(?:(?:\x0D\x0A)[\x20\x09]+)*))?"(?:(?:(?: (?:[\x20\x09]*(?:\x0D\x0A))?[\x20\x09]+|(?:[\x20\x09]+(?:(?:\x0D\x 0A)[\x20\x09]+)*))?(\((?:(?:(?:[\x20\x09]*(?:\x0D\x0A))?[\x20\x09] +|(?:[\x20\x09]+(?:(?:\x0D\x0A)[\x20\x09]+)*))?(?:(?:[\x21-\x27\x2 A-\x5B\x5D-\x7E]|[\x01-\x08\x0B\x0C\x0E-\x1F\x7F])|(?:\\(?:[\x21-\ x7E]|[\x20\x09])|(?:\\(?:\x00|[\x01-\x08\x0B\x0C\x0E-\x1F\x7F]|\x0 A|\x0D)))|(?-1)))*(?:(?:[\x20\x09]*(?:\x0D\x0A))?[\x20\x09]+|(?:[\ x20\x09]+(?:(?:\x0D\x0A)[\x20\x09]+)*))?\)))+(?:(?:[\x20\x09]*(?:\ x0D\x0A))?[\x20\x09]+|(?:[\x20\x09]+(?:(?:\x0D\x0A)[\x20\x09]+)*)) ?|(?:(?:[\x20\x09]*(?:\x0D\x0A))?[\x20\x09]+|(?:[\x20\x09]+(?:(?:\ x0D\x0A)[\x20\x09]+)*)))?)))*))@(?:(?:(?:(?:(?:(?:[\x20\x09]*(?:\x 0D\x0A))?[\x20\x09]+|(?:[\x20\x09]+(?:(?:\x0D\x0A)[\x20\x09]+)*))? (\((?:(?:(?:[\x20\x09]*(?:\x0D\x0A))?[\x20\x09]+|(?:[\x20\x09]+(?: (?:\x0D\x0A)[\x20\x09]+)*))?(?:(?:[\x21-\x27\x2A-\x5B\x5D-\x7E]|[\ x01-\x08\x0B\x0C\x0E-\x1F\x7F])|(?:\\(?:[\x21-\x7E]|[\x20\x09])|(? :\\(?:\x00|[\x01-\x08\x0B\x0C\x0E-\x1F\x7F]|\x0A|\x0D)))|(?-1)))*( ?:(?:[\x20\x09]*(?:\x0D\x0A))?[\x20\x09]+|(?:[\x20\x09]+(?:(?:\x0D \x0A)[\x20\x09]+)*))?\)))+(?:(?:[\x20\x09]*(?:\x0D\x0A))?[\x20\x09 ]+|(?:[\x20\x09]+(?:(?:\x0D\x0A)[\x20\x09]+)*))?|(?:(?:[\x20\x09]* (?:\x0D\x0A))?[\x20\x09]+|(?:[\x20\x09]+(?:(?:\x0D\x0A)[\x20\x09]+ )*)))?(?:[A-Za-z0-9!#$%&'*+\-/=?^_`{|}~]+(?:\.[A-Za-z0-9!#$%&'*+\- /=?^_`{|}~]+)*)(?:(?:(?:(?:[\x20\x09]*(?:\x0D\x0A))?[\x20\x09]+|(? :[\x20\x09]+(?:(?:\x0D\x0A)[\x20\x09]+)*))?(\((?:(?:(?:[\x20\x09]* (?:\x0D\x0A))?[\x20\x09]+|(?:[\x20\x09]+(?:(?:\x0D\x0A)[\x20\x09]+ )*))?(?:(?:[\x21-\x27\x2A-\x5B\x5D-\x7E]|[\x01-\x08\x0B\x0C\x0E-\x 1F\x7F])|(?:\\(?:[\x21-\x7E]|[\x20\x09])|(?:\\(?:\x00|[\x01-\x08\x 0B\x0C\x0E-\x1F\x7F]|\x0A|\x0D)))|(?-1)))*(?:(?:[\x20\x09]*(?:\x0D \x0A))?[\x20\x09]+|(?:[\x20\x09]+(?:(?:\x0D\x0A)[\x20\x09]+)*))?\) ))+(?:(?:[\x20\x09]*(?:\x0D\x0A))?[\x20\x09]+|(?:[\x20\x09]+(?:(?: \x0D\x0A)[\x20\x09]+)*))?|(?:(?:[\x20\x09]*(?:\x0D\x0A))?[\x20\x09 ]+|(?:[\x20\x09]+(?:(?:\x0D\x0A)[\x20\x09]+)*)))?)|(?:(?:(?:(?:(?: [\x20\x09]*(?:\x0D\x0A))?[\x20\x09]+|(?:[\x20\x09]+(?:(?:\x0D\x0A) [\x20\x09]+)*))?(\((?:(?:(?:[\x20\x09]*(?:\x0D\x0A))?[\x20\x09]+|( ?:[\x20\x09]+(?:(?:\x0D\x0A)[\x20\x09]+)*))?(?:(?:[\x21-\x27\x2A-\ x5B\x5D-\x7E]|[\x01-\x08\x0B\x0C\x0E-\x1F\x7F])|(?:\\(?:[\x21-\x7E ]|[\x20\x09])|(?:\\(?:\x00|[\x01-\x08\x0B\x0C\x0E-\x1F\x7F]|\x0A|\ x0D)))|(?-1)))*(?:(?:[\x20\x09]*(?:\x0D\x0A))?[\x20\x09]+|(?:[\x20 \x09]+(?:(?:\x0D\x0A)[\x20\x09]+)*))?\)))+(?:(?:[\x20\x09]*(?:\x0D \x0A))?[\x20\x09]+|(?:[\x20\x09]+(?:(?:\x0D\x0A)[\x20\x09]+)*))?|( ?:(?:[\x20\x09]*(?:\x0D\x0A))?[\x20\x09]+|(?:[\x20\x09]+(?:(?:\x0D \x0A)[\x20\x09]+)*)))?\[(?:(?:(?:[\x20\x09]*(?:\x0D\x0A))?[\x20\x0 9]+|(?:[\x20\x09]+(?:(?:\x0D\x0A)[\x20\x09]+)*))?(?:[\x21-\x5A\x5E -\x7E]|(?:[\x01-\x08\x0B\x0C\x0E-\x1F\x7F]|(?:\\(?:[\x21-\x7E]|[\x 20\x09])|(?:\\(?:\x00|[\x01-\x08\x0B\x0C\x0E-\x1F\x7F]|\x0A|\x0D)) ))))*(?:(?:[\x20\x09]*(?:\x0D\x0A))?[\x20\x09]+|(?:[\x20\x09]+(?:( ?:\x0D\x0A)[\x20\x09]+)*))?\](?:(?:(?:(?:[\x20\x09]*(?:\x0D\x0A))? [\x20\x09]+|(?:[\x20\x09]+(?:(?:\x0D\x0A)[\x20\x09]+)*))?(\((?:(?: (?:[\x20\x09]*(?:\x0D\x0A))?[\x20\x09]+|(?:[\x20\x09]+(?:(?:\x0D\x 0A)[\x20\x09]+)*))?(?:(?:[\x21-\x27\x2A-\x5B\x5D-\x7E]|[\x01-\x08\ x0B\x0C\x0E-\x1F\x7F])|(?:\\(?:[\x21-\x7E]|[\x20\x09])|(?:\\(?:\x0 0|[\x01-\x08\x0B\x0C\x0E-\x1F\x7F]|\x0A|\x0D)))|(?-1)))*(?:(?:[\x2 0\x09]*(?:\x0D\x0A))?[\x20\x09]+|(?:[\x20\x09]+(?:(?:\x0D\x0A)[\x2 0\x09]+)*))?\)))+(?:(?:[\x20\x09]*(?:\x0D\x0A))?[\x20\x09]+|(?:[\x 20\x09]+(?:(?:\x0D\x0A)[\x20\x09]+)*))?|(?:(?:[\x20\x09]*(?:\x0D\x 0A))?[\x20\x09]+|(?:[\x20\x09]+(?:(?:\x0D\x0A)[\x20\x09]+)*)))?)|( ?:(?:(?:(?:(?:(?:[\x20\x09]*(?:\x0D\x0A))?[\x20\x09]+|(?:[\x20\x09 ]+(?:(?:\x0D\x0A)[\x20\x09]+)*))?(\((?:(?:(?:[\x20\x09]*(?:\x0D\x0 A))?[\x20\x09]+|(?:[\x20\x09]+(?:(?:\x0D\x0A)[\x20\x09]+)*))?(?:(? :[\x21-\x27\x2A-\x5B\x5D-\x7E]|[\x01-\x08\x0B\x0C\x0E-\x1F\x7F])|( ?:\\(?:[\x21-\x7E]|[\x20\x09])|(?:\\(?:\x00|[\x01-\x08\x0B\x0C\x0E -\x1F\x7F]|\x0A|\x0D)))|(?-1)))*(?:(?:[\x20\x09]*(?:\x0D\x0A))?[\x 20\x09]+|(?:[\x20\x09]+(?:(?:\x0D\x0A)[\x20\x09]+)*))?\)))+(?:(?:[ \x20\x09]*(?:\x0D\x0A))?[\x20\x09]+|(?:[\x20\x09]+(?:(?:\x0D\x0A)[ \x20\x09]+)*))?|(?:(?:[\x20\x09]*(?:\x0D\x0A))?[\x20\x09]+|(?:[\x2 0\x09]+(?:(?:\x0D\x0A)[\x20\x09]+)*)))?[A-Za-z0-9!#$%&'*+\-/=?^_`{ |}~]+(?:(?:(?:(?:[\x20\x09]*(?:\x0D\x0A))?[\x20\x09]+|(?:[\x20\x09 ]+(?:(?:\x0D\x0A)[\x20\x09]+)*))?(\((?:(?:(?:[\x20\x09]*(?:\x0D\x0 A))?[\x20\x09]+|(?:[\x20\x09]+(?:(?:\x0D\x0A)[\x20\x09]+)*))?(?:(? :[\x21-\x27\x2A-\x5B\x5D-\x7E]|[\x01-\x08\x0B\x0C\x0E-\x1F\x7F])|( ?:\\(?:[\x21-\x7E]|[\x20\x09])|(?:\\(?:\x00|[\x01-\x08\x0B\x0C\x0E -\x1F\x7F]|\x0A|\x0D)))|(?-1)))*(?:(?:[\x20\x09]*(?:\x0D\x0A))?[\x 20\x09]+|(?:[\x20\x09]+(?:(?:\x0D\x0A)[\x20\x09]+)*))?\)))+(?:(?:[ \x20\x09]*(?:\x0D\x0A))?[\x20\x09]+|(?:[\x20\x09]+(?:(?:\x0D\x0A)[ \x20\x09]+)*))?|(?:(?:[\x20\x09]*(?:\x0D\x0A))?[\x20\x09]+|(?:[\x2 0\x09]+(?:(?:\x0D\x0A)[\x20\x09]+)*)))?)(?:\.(?:(?:(?:(?:(?:[\x20\ x09]*(?:\x0D\x0A))?[\x20\x09]+|(?:[\x20\x09]+(?:(?:\x0D\x0A)[\x20\ x09]+)*))?(\((?:(?:(?:[\x20\x09]*(?:\x0D\x0A))?[\x20\x09]+|(?:[\x2 0\x09]+(?:(?:\x0D\x0A)[\x20\x09]+)*))?(?:(?:[\x21-\x27\x2A-\x5B\x5 D-\x7E]|[\x01-\x08\x0B\x0C\x0E-\x1F\x7F])|(?:\\(?:[\x21-\x7E]|[\x2 0\x09])|(?:\\(?:\x00|[\x01-\x08\x0B\x0C\x0E-\x1F\x7F]|\x0A|\x0D))) |(?-1)))*(?:(?:[\x20\x09]*(?:\x0D\x0A))?[\x20\x09]+|(?:[\x20\x09]+ (?:(?:\x0D\x0A)[\x20\x09]+)*))?\)))+(?:(?:[\x20\x09]*(?:\x0D\x0A)) ?[\x20\x09]+|(?:[\x20\x09]+(?:(?:\x0D\x0A)[\x20\x09]+)*))?|(?:(?:[ \x20\x09]*(?:\x0D\x0A))?[\x20\x09]+|(?:[\x20\x09]+(?:(?:\x0D\x0A)[ \x20\x09]+)*)))?[A-Za-z0-9!#$%&'*+\-/=?^_`{|}~]+(?:(?:(?:(?:[\x20\ x09]*(?:\x0D\x0A))?[\x20\x09]+|(?:[\x20\x09]+(?:(?:\x0D\x0A)[\x20\ x09]+)*))?(\((?:(?:(?:[\x20\x09]*(?:\x0D\x0A))?[\x20\x09]+|(?:[\x2 0\x09]+(?:(?:\x0D\x0A)[\x20\x09]+)*))?(?:(?:[\x21-\x27\x2A-\x5B\x5 D-\x7E]|[\x01-\x08\x0B\x0C\x0E-\x1F\x7F])|(?:\\(?:[\x21-\x7E]|[\x2 0\x09])|(?:\\(?:\x00|[\x01-\x08\x0B\x0C\x0E-\x1F\x7F]|\x0A|\x0D))) |(?-1)))*(?:(?:[\x20\x09]*(?:\x0D\x0A))?[\x20\x09]+|(?:[\x20\x09]+ (?:(?:\x0D\x0A)[\x20\x09]+)*))?\)))+(?:(?:[\x20\x09]*(?:\x0D\x0A)) ?[\x20\x09]+|(?:[\x20\x09]+(?:(?:\x0D\x0A)[\x20\x09]+)*))?|(?:(?:[ \x20\x09]*(?:\x0D\x0A))?[\x20\x09]+|(?:[\x20\x09]+(?:(?:\x0D\x0A)[ \x20\x09]+)*)))?))*))