(?:
http://(?:(?:(?:(?:(?:[a-zA-Z\d](?

?:[a-zA-Z\d]|-)*[a-zA-Z\d])?)\.)*(?:[a-zA-Z](?

?:[a-zA-Z\d]|-)*[a-zA-Z\d])?))|(?

?:\d+)(?:\.(?:\d+)){3}))(?:

?:\d+))?)(?:/(?

?

?

?:[a-zA-Z\d$\-_.+!*'(),]|(?:%[a-fA-F\d]{2}))|[;:@&=])*)(?:/(?

?

?:[a-zA-Z\d$\-_.+!*'(),]|(?:%[a-fA-F\d]{2}))|[;:@&=])*))*)(?:\?(?

?

?:[a-zA-Z\d$\-_.+!*'(),]|(?:%[a-fA-F\d]{2}))|[;:@&=])*))?)?)|(?:
ftp://(?:(?:(?:(?:(?:[a-zA-Z\d$\-_.+!*'(),]|(?:%[a-fA-F\d]{2}))|[;?&=])*)(?:

?

?

?:[a-zA-Z\d$\-_.+!*'(),]|(?:%[a-fA-F\d]{2}))|[;?&=])*))?@)?(?

?

?

?

?:[a-zA-Z\d](?

?:[a-zA-Z\d]|-)*[a-zA-Z\d])?)\.)*(?:[a-zA-Z](?

?:[a-zA-Z\d]|-)*[a-zA-Z\d])?))|(?

?:\d+)(?:\.(?:\d+)){3}))(?:

?:\d+))?))(?:/(?

?

?

?:[a-zA-Z\d$\-_.+!*'(),]|(?:%[a-fA-F\d]{2}))|[?:@&=])*)(?:/(?

?

?:[a-zA-Z\d$\-_.+!*'(),]|(?:%[a-fA-F\d]{2}))|[?:@&=])*))*)(?:;type=[AIDaid])?)?)|(?:news

?

?

?

?:[a-zA-Z\d$\-_.+!*'(),]|(?:%[a-fA-F\d]{2}))|[;/?:&=])+@(?

?

?

?:[a-zA-Z\d](?

?:[a-zA-Z\d]|-)*[a-zA-Z\d])?)\.)*(?:[a-zA-Z](?

?:[a-zA-Z\d]|-)*[a-zA-Z\d])?))|(?

?:\d+)(?:\.(?:\d+)){3})))|(?:[a-zA-Z](?:[a-zA-Z\d]|[_.+-])*)|\*))|(?:nntp://(?

?

?

?

?:[a-zA-Z\d](?

?:[a-zA-Z\d]|-)*[a-zA-Z\d])?)\.)*(?:[a-zA-Z](?

?:[a-zA-Z\d]|-)*[a-zA-Z\d])?))|(?

?:\d+)(?:\.(?:\d+)){3}))(?:

?:\d+))?)/(?:[a-zA-Z](?:[a-zA-Z\d]|[_.+-])*)(?:/(?:\d+))?)|(?:
telnet://(?:(?:(?:(?:(?:[a-zA-Z\d$\-_.+!*'(),]|(?:%[a-fA-F\d]{2}))|[;?&=])*)(?:

?

?

?:[a-zA-Z\d$\-_.+!*'(),]|(?:%[a-fA-F\d]{2}))|[;?&=])*))?@)?(?

?

?

?

?:[a-zA-Z\d](?

?:[a-zA-Z\d]|-)*[a-zA-Z\d])?)\.)*(?:[a-zA-Z](?

?:[a-zA-Z\d]|-)*[a-zA-Z\d])?))|(?

?:\d+)(?:\.(?:\d+)){3}))(?:

?:\d+))?))/?)|(?:
gopher://(?:(?:(?:(?:(?:[a-zA-Z\d](?

?:[a-zA-Z\d]|-)*[a-zA-Z\d])?)\.)*(?:[a-zA-Z](?

?:[a-zA-Z\d]|-)*[a-zA-Z\d])?))|(?

?:\d+)(?:\.(?:\d+)){3}))(?:

?:\d+))?)(?:/(?:[a-zA-Z\d$\-_.+!*'(),;/?:@&=]|(?:%[a-fA-F\d]{2}))(?

?

?:[a-zA-Z\d$\-_.+!*'(),;/?:@&=]|(?:%[a-fA-F\d]{2}))*)(?:%09(?

?

?:[a-zA-Z\d$\-_.+!*'(),]|(?:%[a-fA-F\d]{2}))|[;:@&=])*)(?:%09(?

?:[a-zA-Z\d$\-_.+!*'(),;/?:@&=]|(?:%[a-fA-F\d]{2}))*))?)?)?)?)|(?:wais://(?

?

?

?

?:[a-zA-Z\d](?

?:[a-zA-Z\d]|-)*[a-zA-Z\d])?)\.)*(?:[a-zA-Z](?

?:[a-zA-Z\d]|-)*[a-zA-Z\d])?))|(?

?:\d+)(?:\.(?:\d+)){3}))(?:

?:\d+))?)/(?

?:[a-zA-Z\d$\-_.+!*'(),]|(?:%[a-fA-F\d]{2}))*)(?

?:/(?

?:[a-zA-Z\d$\-_.+!*'(),]|(?:%[a-fA-F\d]{2}))*)/(?

?:[a-zA-Z\d$\-_.+!*'(),]|(?:%[a-fA-F\d]{2}))*))|\?(?

?

?:[a-zA-Z\d$\-_.+!*'(),]|(?:%[a-fA-F\d]{2}))|[;:@&=])*))?)|(?

ailto

?

?:[a-zA-Z\d$\-_.+!*'(),;/?:@&=]|(?:%[a-fA-F\d]{2}))+))|(?:file://(?

?

?

?

?:[a-zA-Z\d](?

?:[a-zA-Z\d]|-)*[a-zA-Z\d])?)\.)*(?:[a-zA-Z](?

?:[a-zA-Z\d]|-)*[a-zA-Z\d])?))|(?

?:\d+)(?:\.(?:\d+)){3}))|localhost)?/(?

?

?

?:[a-zA-Z\d$\-_.+!*'(),]|(?:%[a-fA-F\d]{2}))|[?:@&=])*)(?:/(?

?

?:[a-zA-Z\d$\-_.+!*'(),]|(?:%[a-fA-F\d]{2}))|[?:@&=])*))*))|(?

rospero://(?

?

?

?

?:[a-zA-Z\d](?

?:[a-zA-Z\d]|-)*[a-zA-Z\d])?)\.)*(?:[a-zA-Z](?

?:[a-zA-Z\d]|-)*[a-zA-Z\d])?))|(?

?:\d+)(?:\.(?:\d+)){3}))(?:

?:\d+))?)/(?

?

?

?:[a-zA-Z\d$\-_.+!*'(),]|(?:%[a-fA-F\d]{2}))|[?:@&=])*)(?:/(?

?

?:[a-zA-Z\d$\-_.+!*'(),]|(?:%[a-fA-F\d]{2}))|[?:@&=])*))*)(?

?:;(?

?

?:[a-zA-Z\d$\-_.+!*'(),]|(?:%[a-fA-F\d]{2}))|[?:@&])*)=(?

?

?:[a-zA-Z\d$\-_.+!*'(),]|(?:%[a-fA-F\d]{2}))|[?:@&])*)))*)|(?:ldap://(?

?

?

?

?

?:[a-zA-Z\d](?

?:[a-zA-Z\d]|-)*[a-zA-Z\d])?)\.)*(?:[a-zA-Z](?

?:[a-zA-Z\d]|-)*[a-zA-Z\d])?))|(?

?:\d+)(?:\.(?:\d+)){3}))(?:

?:\d+))?))?/(?

?

?

?

?

?

?:[a-zA-Z\d]|%(?:3\d|[46][a-fA-F\d]|[57][Aa\d]))|(?:%20))+|(?:OID|oid)\.(?

?:\d+)(?:\.(?:\d+))*))(?

?:%0[Aa])?(?:%20)*)=(?

?:%0[Aa])?(?:%20)*))?(?

?:[a-zA-Z\d$\-_.+!*'(),]|(?:%[a-fA-F\d]{2}))*))(?

?

?:%0[Aa])?(?:%20)*)\+(?

?:%0[Aa])?(?:%20)*)(?

?

?

?

?:[a-zA-Z\d]|%(?:3\d|[46][a-fA-F\d]|[57][Aa\d]))|(?:%20))+|(?:OID|oid)\.(?

?:\d+)(?:\.(?:\d+))*))(?

?:%0[Aa])?(?:%20)*)=(?

?:%0[Aa])?(?:%20)*))?(?

?:[a-zA-Z\d$\-_.+!*'(),]|(?:%[a-fA-F\d]{2}))*)))*)(?

?

?

?:%0[Aa])?(?:%20)*)(?:[;,])(?

?:%0[Aa])?(?:%20)*))(?

?

?

?

?

?:[a-zA-Z\d]|%(?:3\d|[46][a-fA-F\d]|[57][Aa\d]))|(?:%20))+|(?:OID|oid)\.(?

?:\d+)(?:\.(?:\d+))*))(?

?:%0[Aa])?(?:%20)*)=(?

?:%0[Aa])?(?:%20)*))?(?

?:[a-zA-Z\d$\-_.+!*'(),]|(?:%[a-fA-F\d]{2}))*))(?

?

?:%0[Aa])?(?:%20)*)\+(?

?:%0[Aa])?(?:%20)*)(?

?

?

?

?:[a-zA-Z\d]|%(?:3\d|[46][a-fA-F\d]|[57][Aa\d]))|(?:%20))+|(?:OID|oid)\.(?

?:\d+)(?:\.(?:\d+))*))(?

?:%0[Aa])?(?:%20)*)=(?

?:%0[Aa])?(?:%20)*))?(?

?:[a-zA-Z\d$\-_.+!*'(),]|(?:%[a-fA-F\d]{2}))*)))*))*(?

?

?:%0[Aa])?(?:%20)*)(?:[;,])(?

?:%0[Aa])?(?:%20)*))?)(?:\?(?

?

?

?:[a-zA-Z\d$\-_.+!*'(),]|(?:%[a-fA-F\d]{2}))+)(?:,(?

?:[a-zA-Z\d$\-_.+!*'(),]|(?:%[a-fA-F\d]{2}))+))*)?)(?:\?(?:base|one|sub)(?:\?(?

(?:[a-zA-Z\d$\-_.+!*'(),;/?:@&=]|(?:%[a-fA-F\d]{2}))+)))?)?)?)|(?

?:z39\.50[rs])://(?

?

?

?

?:[a-zA-Z\d](?

?:[a-zA-Z\d]|-)*[a-zA-Z\d])?)\.)*(?:[a-zA-Z](?

?:[a-zA-Z\d]|-)*[a-zA-Z\d])?))|(?

?:\d+)(?:\.(?:\d+)){3}))(?:

?:\d+))?)(?:/(?

?

?:[a-zA-Z\d$\-_.+!*'(),]|(?:%[a-fA-F\d]{2}))+)(?:\+(?

?:[a-zA-Z\d$\-_.+!*'(),]|(?:%[a-fA-F\d]{2}))+))*(?:\?(?

?:[a-zA-Z\d$\-_.+!*'(),]|(?:%[a-fA-F\d]{2}))+))?)?(?:;esn=(?

?:[a-zA-Z\d$\-_.+!*'(),]|(?:%[a-fA-F\d]{2}))+))?(?:;rs=(?

?:[a-zA-Z\d$\-_.+!*'(),]|(?:%[a-fA-F\d]{2}))+)(?:\+(?

?:[a-zA-Z\d$\-_.+!*'(),]|(?:%[a-fA-F\d]{2}))+))*)?))|(?:cid

?

?

?:[a-zA-Z\d$\-_.+!*'(),]|(?:%[a-fA-F\d]{2}))|[;?:@&=])*))|(?

id

?

?

?:[a-zA-Z\d$\-_.+!*'(),]|(?:%[a-fA-F\d]{2}))|[;?:@&=])*)(?:/(?

?

?:[a-zA-Z\d$\-_.+!*'(),]|(?:%[a-fA-F\d]{2}))|[;?:@&=])*))?)|(?:vemmi://(?

?

?

?

?:[a-zA-Z\d](?

?:[a-zA-Z\d]|-)*[a-zA-Z\d])?)\.)*(?:[a-zA-Z](?

?:[a-zA-Z\d]|-)*[a-zA-Z\d])?))|(?

?:\d+)(?:\.(?:\d+)){3}))(?:

?:\d+))?)(?:/(?

?

?:[a-zA-Z\d$\-_.+!*'(),]|(?:%[a-fA-F\d]{2}))|[/?:@&=])*)(?

?:;(?

?

?:[a-zA-Z\d$\-_.+!*'(),]|(?:%[a-fA-F\d]{2}))|[/?:@&])*)=(?

?

?:[a-zA-Z\d$\-_.+!*'(),]|(?:%[a-fA-F\d]{2}))|[/?:@&])*))*))?)|(?:imap://(?

?

?

?

?

?

?:[a-zA-Z\d$\-_.+!*'(),]|(?:%[a-fA-F\d]{2}))|[&=~])+)(?

?:;[Aa][Uu][Tt][Hh]=(?:\*|(?

?

?:[a-zA-Z\d$\-_.+!*'(),]|(?:%[a-fA-F\d]{2}))|[&=~])+))))?)|(?

?:;[Aa][Uu][Tt][Hh]=(?:\*|(?

?

?:[a-zA-Z\d$\-_.+!*'(),]|(?:%[a-fA-F\d]{2}))|[&=~])+)))(?

?

?

?:[a-zA-Z\d$\-_.+!*'(),]|(?:%[a-fA-F\d]{2}))|[&=~])+))?))@)?(?

?

?

?

?:[a-zA-Z\d](?

?:[a-zA-Z\d]|-)*[a-zA-Z\d])?)\.)*(?:[a-zA-Z](?

?:[a-zA-Z\d]|-)*[a-zA-Z\d])?))|(?

?:\d+)(?:\.(?:\d+)){3}))(?:

?:\d+))?))/(?

?

?

?

?

?:[a-zA-Z\d$\-_.+!*'(),]|(?:%[a-fA-F\d]{2}))|[&=~:@/])+)?;[Tt][Yy][Pp][Ee]=(?:[Ll](?:[Ii][Ss][Tt]|[Ss][Uu][Bb])))|(?

?

?

?:[a-zA-Z\d$\-_.+!*'(),]|(?:%[a-fA-F\d]{2}))|[&=~:@/])+)(?:\?(?

?

?:[a-zA-Z\d$\-_.+!*'(),]|(?:%[a-fA-F\d]{2}))|[&=~:@/])+))?(?

?:;[Uu][Ii][Dd][Vv][Aa][Ll][Ii][Dd][Ii][Tt][Yy]=(?:[1-9]\d*)))?)|(?

?

?

?:[a-zA-Z\d$\-_.+!*'(),]|(?:%[a-fA-F\d]{2}))|[&=~:@/])+)(?

?:;[Uu][Ii][Dd][Vv][Aa][Ll][Ii][Dd][Ii][Tt][Yy]=(?:[1-9]\d*)))?(?:/;[Uu][Ii][Dd]=(?:[1-9]\d*))(?

?:/;[Ss][Ee][Cc][Tt][Ii][Oo][Nn]=(?

?

?:[a-zA-Z\d$\-_.+!*'(),]|(?:%[a-fA-F\d]{2}))|[&=~:@/])+)))?)))?)|(?:nfs

?

?://(?

?

?

?

?:[a-zA-Z\d](?

?:[a-zA-Z\d]|-)*[a-zA-Z\d])?)\.)*(?:[a-zA-Z](?

?:[a-zA-Z\d]|-)*[a-zA-Z\d])?))|(?

?:\d+)(?:\.(?:\d+)){3}))(?:

?:\d+))?)(?

?:/(?

?

?

?

?:[a-zA-Z\d\$\-_.!~*'(),])|(?:%[a-fA-F\d]{2})|[:@&=+])*)(?:/(?

?

?:[a-zA-Z\d\$\-_.!~*'(),])|(?:%[a-fA-F\d]{2})|[:@&=+])*))*)?)))?)|(?:/(?

?

?

?

?:[a-zA-Z\d\$\-_.!~*'(),])|(?:%[a-fA-F\d]{2})|[:@&=+])*)(?:/(?

?

?:[a-zA-Z\d\$\-_.!~*'(),])|(?:%[a-fA-F\d]{2})|[:@&=+])*))*)?))|(?

?

?

?

?:[a-zA-Z\d\$\-_.!~*'(),])|(?:%[a-fA-F\d]{2})|[:@&=+])*)(?:/(?

?

?:[a-zA-Z\d\$\-_.!~*'(),])|(?:%[a-fA-F\d]{2})|[:@&=+])*))*)?)))