This is not a matter of "having to be heuristic", this is plain wrong. Here you are matching something that can be easily ruled out by a non-heuristic rule without introducing any false negative, so it IS retarded.
How can this possibly make sense:
example.com/foo/bar => not an URL
wwwexamplecom/foo/bar => URL
What's the rationale? Ok, I see, it seems to be "ANYTHING that starts with www". Even "wwwlalala" is highlighted as a url.
That's just plain stupid (sorry, it's just a fact, and note that I AM being constructive by pointing out a stupid error that can easily be fixed). There's no way that something that doesn't even contain a dot can be an absolute url (detecting relative urls would make no sense, right?)
At the very least, the "starts with www" criteria should be changed to "starts with www, optionally followed by letters, numbers, dashes and underscores, followed by a dot" (and then at least a non-space character).
This would eliminate a lot of false positives with no single added false negative, and it's trivial.
This is not a matter of "having to be heuristic", this is plain wrong. Here you are matching something that can be easily ruled out by a non-heuristic rule without introducing any false negative, so it IS retarded.
How can this possibly make sense: com/foo/ bar => not an URL /foo/bar => URL
example.
wwwexamplecom
What's the rationale? Ok, I see, it seems to be "ANYTHING that starts with www". Even "wwwlalala" is highlighted as a url.
That's just plain stupid (sorry, it's just a fact, and note that I AM being constructive by pointing out a stupid error that can easily be fixed). There's no way that something that doesn't even contain a dot can be an absolute url (detecting relative urls would make no sense, right?)
At the very least, the "starts with www" criteria should be changed to "starts with www, optionally followed by letters, numbers, dashes and underscores, followed by a dot" (and then at least a non-space character).
This would eliminate a lot of false positives with no single added false negative, and it's trivial.