Title: Scam victims 
	                Name: Hiller
	                Date: 10/20/2025 1:26:06 PM
	                Comment: 
I was a scam victim, I lost a lot of money up to $170,000 I would like to express my gratitude to Innovations recovery Analyst for their exceptional assistance in recovering my funds from a forex broker. Their expertise and professionalism in navigating the complex process were truly commendable. Through their guidance and relentless efforts, I was able to successfully retrieve my funds of $170,000, providing me with much-needed relief. I highly recommend them on - INNOVATIONSANALYST@ GMAIL. COM or WhatsApp + 1 424 285 0682 to anyone facing similar challenges, as their dedication and commitment to helping clients are truly impressive. Thank you, for your invaluable support in resolving this matter.
                
                
            
                
	                Title: Scam victims 
	                Name: Hiller
	                Date: 10/20/2025 1:23:37 PM
	                Comment: 
I was a scam victim, I lost a lot of money up to $170,000 I would like to express my gratitude to Innovations recovery Analyst for their exceptional assistance in recovering my funds from a forex broker. Their expertise and professionalism in navigating the complex process were truly commendable. Through their guidance and relentless efforts, I was able to successfully retrieve my funds of $170,000, providing me with much-needed relief. I highly recommend them on - INNOVATIONSANALYST@ GMAIL. COM or WhatsApp + 1 424 285 0682 to anyone facing similar challenges, as their dedication and commitment to helping clients are truly impressive. Thank you, for your invaluable support in resolving this matter.
                
                
            
                
	                Title: check url
	                Name: miki
	                Date: 9/28/2016 7:43:54 AM
	                Comment: 
how  check ?
1 if page name only(with out http(s) ftp(s)... + params data ?
2 page name is not English name ?
3 page name is relative path \..\page name
                
                
            
                
	                Title: Optional Protocol
	                Name: Riccardo
	                Date: 5/12/2016 10:03:06 AM
	                Comment: 
In need of validate user input (asked for URL) I changed it as follow in the protocol section. 
Now the protocol is no more mandatory and, if added, can be one of ftp/ftps/http/https
^(?:((ht|f)tp(?:s)?\:\/\/|)[a-zA-Z0-9]+(?:(?:\.|\-)[a-zA-Z0-9]+)+(?:\:\d+)?(?:\/[\w\-]+)*(?:\/?|\/\w+\.[a-zA-Z]{2,4}(?:\?[\w]+\=[\w\-]+)?)?(?:\&[\w]+\=[\w\-]+)*)$
                
                
            
                
	                Title: update
	                Name:  Emblibrary
	                Date: 11/25/2015 1:58:01 AM
	                Comment: 
Very constructive for new beginners to learn about the field that is newer for them. <b><a href="http://www.digitemb.com/emb-library.php">Emblibrary</a></b>
                
                
            
                
	                Title: update
	                Name:  Emblibrary
	                Date: 11/25/2015 1:57:11 AM
	                Comment: 
Very constructive for new beginners to learn about the field that is newer for them. <b><a href="http://www.digitemb.com/emb-library.php">Emblibrary</a></b>
                
                
            
                
	                Title: Showing vali in http://www.website
	                Name: AVR
	                Date: 7/23/2015 5:11:02 AM
	                Comment: 
I tried with this url http://www.website and it shows valid. but this url is invalid
                
                
            
                
	                Title: Improved
	                Name: Ted Cambron
	                Date: 4/13/2015 9:59:02 PM
	                Comment: 
Now accepts "http://www.site.com:8008" and "http://192.168.0.102:81/play.pl?param=2" :)
                
                
            
                
	                Title: URL Validator Regex
	                Name: Prafulla
	                Date: 1/23/2014 1:56:28 AM
	                Comment: 
The problem with the above regex is, it doesnot matches though it is a valid url
http://website.com/perl?key=value
Also if you want to allow both http and www, then use
^(((http(?:s)?\:\/\/)|www\.)[a-zA-Z0-9\-]+(?:\.[a-zA-Z0-9\-]+)*\.[a-zA-Z]{2,6}(?:\/?|(?:\/[\w\-]+)*)(?:\/?|\/\w+((\.[a-zA-Z]{2,4})?)(?:\?[\w]+\=[\w\-]+)?)?(?:\&[\w]+\=[\w\-]+)*)$
                
                
            
                
	                Title: URL Validator Regex
	                Name: Prafulla
	                Date: 1/23/2014 1:48:39 AM
	                Comment: 
The problem with the above regex is, it doesnot matches though it is a valid url
http://website.com/perl?key=value
Also if you want to allow both http and www, then use
^(((http(?:s)?\:\/\/)|www\.)[a-zA-Z0-9\-]+(?:\.[a-zA-Z0-9\-]+)*\.[a-zA-Z]{2,6}(?:\/?|(?:\/[\w\-]+)*)(?:\/?|\/\w+((\.[a-zA-Z]{2,4})?)(?:\?[\w]+\=[\w\-]+)?)?(?:\&[\w]+\=[\w\-]+)*)$
                
                
            
                
	                Title: URL Validation
	                Name: Shantonu
	                Date: 7/7/2013 7:26:10 AM
	                Comment: 
(https?|ftp)://(www\d?|[a-zA-Z0-9]+)?\.[a-zA-Z0-9-]+(\:|\.)([a-zA-Z0-9.]+|(\d+)?)([/?].*)?
                
                
            
                
	                Title: one case failure
	                Name: Aditya Singh
	                Date: 5/28/2013 7:07:58 AM
	                Comment: 
it does not work for this case of url
"http://www.asssdd"
it should be invalid but it accept as valid url
                
                
            
                
	                Title: one case failure
	                Name: Aditya Singh
	                Date: 5/28/2013 7:06:39 AM
	                Comment: 
it does not work for this case of url
"http://www.asssdd"
it should be invalid but it accept as valid url
                
                
            
                
	                Title: Seven Cor
	                Name: hgfhgf
	                Date: 9/18/2012 9:06:49 PM
	                Comment: 
Seven Core, [url=http://www.sevencoregold.com/gold.html]buy seven core gold[/url]  Seven Core, <a href="http://www.sevencoregold.com/gold.html">buy seven core gold</a> a new MMORPG with riding actions as its core gameplay, is currently being developed by Noria
                
                
            
                
	                Title: Seven Cor
	                Name: hgfhgf
	                Date: 9/18/2012 9:06:34 PM
	                Comment: 
Seven Core, [url=http://www.sevencoregold.com/gold.html]buy seven core gold[/url]  Seven Core, <a href="http://www.sevencoregold.com/gold.html">buy seven core gold</a> a new MMORPG with riding actions as its core gameplay, is currently being developed by Noria
                
                
            
                
	                Title: cheap jerseys
	                Name: cheap jerseys
	                Date: 9/6/2012 11:00:16 PM
	                Comment: 
You are so cool! I read a few words in these before, I don't think. So nice to search out some original idea on this subject. Really thank you. In fact this site is hope on the Internet, with a little creativity. Useful work to bring new Internet innovation!
http://www.redbottomshoesplaza.com/
http://www.christianlouboutinfreeus.com/
http://www.cheapjerseysvipclub.com/
                
                
            
                
	                Title: nike air max tn sko
	                Name: dksko
	                Date: 7/24/2012 3:12:47 AM
	                Comment: 
Nike Air Max provides the ultimate in impact protection — reducing shock and distributing pressure — to provide you with absolute comfort and stability.
http://www.dksko.com/ 
                
                
            
                
	                Title: Won't match url with port
	                Name: Al
	                Date: 1/5/2011 12:12:41 PM
	                Comment: 
For example http://www.site.com:8008 doesn't match the pattern.
                
                
            
                
	                Title: Relax the Regex
	                Name: Benno
	                Date: 12/9/2010 9:44:50 AM
	                Comment: 
This fails for me on a simple url.
http://192.168.0.102:81/play.pl?param=2
HTTP://SMH.COM.AU also fails - even through browsers honour it.
The reality is that, all the text after the first trailing forward slash -  is potentially valid in the real world. 
Once a web server receives a GET or POST string it has the option to parse (and make sense of) any possible ASCII text and return a valid response.
It depends on your requirement - but if it is to ensure the user has entered a web address that is possibly correct - whether an intranet address, a local nextwork address or real web - then the regex should be relaxed to the maximum extent.
Here is mine (in Perl) - the trailing /i means ignore case - as per browsers
$url=~/^http:\/\/[a-z0-9_\-\.\:]+(|\/\S*)$/i;
Cheers
Ben
I propose ^http:\/\/[a-z0-9_\-]+
So I propose
                
                
            
                
	                Title: Thanks
	                Name: Ted Cambron
	                Date: 10/8/2010 8:57:51 PM
	                Comment: 
Thanks viren negi,
Good feedback. I'll update the regex as you suggested when I get some time to sit down.
                
                
            
                
	                Title: Great Regex but not full proof
	                Name: viren negi
	                Date: 9/23/2009 2:16:38 AM
	                Comment: 
I must say by far your regex is far more robust and better compare to other regex's that one can find over the INTENET in distinguishing between malformed and proper URL .But it still feel it lack some basic functionality check like 
1.If a URL has "https". I know it simple one just need to append "s?" after "http" of your regex but still.
2.The regex treat a URL as proper and not malformed even if a URL contain and "_".
e.g https://www._google.com is identified as proper and not malformed URL
(above URL is been checked against your regex  in http://rubular.com)
to get rid of this I just removed all the '_' form your regex.
hope you don't mind. 
It works fien then I wonder what are those '_' doing there.
Hope that you put more light on to it in your future comment
3. the regex treat the  URL http://www.google.com/ as malformed.which its shouldn't have done.
rest all is fine
Great work Man.Truly Great  
Carry on with such wonderful work 
and please make the necessary change in your regex for the betterment of all our fellow developers
                
                
            
                
	                Title: URI.pm is insecure
	                Name: Ted Cambron
	                Date: 6/9/2008 9:13:16 PM
	                Comment: 
OK, once again for all you purists. The URI.pm family is insecure. Every hacker knows it. A double dot is a valid URI and also a good way to do a traversal hack that can wipe out a database. Using URI.pm will not prevent this. Using my regex will. Why use URI.pm and then use another piece of code to loop through the data and look for double dots when all you need is one simple regex? Thank you sir and good day.
                
                
            
                
	                Title: URI.pm is insecure
	                Name: Ted Cambron
	                Date: 6/9/2008 9:13:05 PM
	                Comment: 
OK, once again for all you purists. The URI.pm family is insecure. Every hacker knows it. A double dot is a valid URI and also a good way to do a traversal hack that can wipe out a database. Using URI.pm will not prevent this. Using my regex will. Why use URI.pm and then use another piece of code to loop through the data and look for double dots when all you need is one simple regex? Thank you sir and good day.
                
                
            
                
	                Title: Not so hot
	                Name: Meno d'Emme
	                Date: 4/21/2008 10:41:20 PM
	                Comment: 
The failure cases are valid URIs and there are many more valid's that the Rx will not match. The Rx will also match things that are invalid. The URI.pm family is core in Perl and does these things correctly and with more power and flexibility.
This seems to be case will all the Rxes posted by this author. I.e., there is a core, or well known, module that will do it right and the Rxes in question fail on valid cases and pass certain bad ones.
                
                
            
                
	                Title: Not so hot
	                Name: Meno d'Emme
	                Date: 4/21/2008 10:41:05 PM
	                Comment: 
The failure cases are valid URIs and there are many more valid's that the Rx will not match. The Rx will also match things that are invalid. The URI.pm family is core in Perl and does these things correctly and with more power and flexibility.
This seems to be case will all the Rxes posted by this author. I.e., there is a core, or well known, module that will do it right and the Rxes in question fail on valid cases and pass certain bad ones.
                
                
            
                
	                Title: Malfunction
	                Name: [email protected]
	                Date: 4/17/2008 9:29:34 AM
	                Comment: 
Using the URL 
http://regexlib.com/UserPatterns.aspx?authorId=4f1e9e8d-d9fa-4221-ac16-ee9534263d28 
there is no match and also no match using the .net engine or the clients engine.
Therefore I would offer: 
^(http\:\/\/[a-zA-Z0-9_\-]+(?:\.[a-zA-Z0-9_\-]+)*\.[a-zA-Z]{2,4}(?:\/[a-zA-Z0-9_\-]+)*(?:\/[a-zA-Z0-9_]+\.[a-zA-Z]{2,4}(?:\?[a-zA-Z0-9_\-]+=[a-zA-Z0-9_\-]+)?)?(?:\&[a-zA-Z0-9_\-]+\=[a-zA-Z0-9_\-]+)*)$
                
                
            
                
	                Title: Update
	                Name: Ted Cambron
	                Date: 7/28/2007 12:36:21 AM
	                Comment: 
Dang, a double post. :(
After further test I made one more change and it's working quite well. Here's the finished product...
^(http\:\/\/[a-zA-Z0-9_\-]+(?:\.[a-zA-Z0-9_\-]+)*\.[a-zA-Z]{2,4}(?:\/[a-zA-Z0-9_]+)*(?:\/[a-zA-Z0-9_]+\.[a-zA-Z]{2,4}(?:\?[a-zA-Z0-9_]+\=[a-zA-Z0-9_]+)?)?(?:\&[a-zA-Z0-9_]+\=[a-zA-Z0-9_]+)*)$
                
                
            
                
	                Title: Update
	                Name: Ted Cambron
	                Date: 7/28/2007 12:34:11 AM
	                Comment: 
Had to make a slight upate to the query part.
^(http\:\/\/[a-zA-Z0-9_\-]+(?:\.[a-zA-Z0-9_\-]+)*\.[a-zA-Z]{2,4}(?:\/[a-zA-Z0-9_]+)*(?:\/[a-zA-Z0-9_]+\.[a-zA-Z]{2,4}(?:\?[a-zA-Z0-9_]+\=[a-zA-Z0-9_]?)?)?(?:\&[a-zA-Z0-9_]+\=[a-zA-Z0-9_]+)*)$ 
                
                
            
                
	                Title: Update
	                Name: Ted Cambron
	                Date: 7/28/2007 12:25:29 AM
	                Comment: 
Had to make a slight upate to the query part.
^(http\:\/\/[a-zA-Z0-9_\-]+(?:\.[a-zA-Z0-9_\-]+)*\.[a-zA-Z]{2,4}(?:\/[a-zA-Z0-9_]+)*(?:\/[a-zA-Z0-9_]+\.[a-zA-Z]{2,4}(?:\?[a-zA-Z0-9_]+\=[a-zA-Z0-9_]?)?)?(?:\&[a-zA-Z0-9_]+\=[a-zA-Z0-9_]+)*)$