Reputation: 1645
How can I validate URL in android... I am trying to use regex but it is always returning false even if the url is correct
Code used:
private boolean checkEmail(String email) {
return URL.matcher(email).matches();
}
public final Pattern URL = Pattern.compile(
"/((([A-Za-z]{3,9}:(?:\\/\\/)?)(?:[-;:&=\\+\\$,\\w]+@)?[A-Za-z0-9.-]+(:[0-9]+)?|(?:www.|[-;:&=\\+\\$,\\w]+@)[A-Za-z0-9.-]+)((?:\\/[\\+~%\\/.\\w-_]*)?\\??(?:[-\\+=&;%@.\\w_]*)#?(?:[\\w]*))?)/"
);
I have got very basic knowledge in regex, so I don't know whether the above used string is correct. Please help...
Upvotes: 4
Views: 8467
Reputation: 424
In case you want to find a URL inside a text comprised of string other than just the URL, use this
Patterns.WEB_URL.matcher(bodyText).find()
matches() tries to match the string length to exactly that of the URl, while find() will look for the string in the entire text
Upvotes: 5
Reputation: 6691
As your question is more specific to android. You can use this
android.util.Patterns.WEB_URL.matcher(url).matches();
Upvotes: 23