Je voulais valider le url
collé par l'utilisateur pour Youtube & VimeoRegex pour url Youtube et Vimoe
Par exemple:
m.youtube.com, youtu.be, youtube.com, vimeo.com
voulait aussi extraire le video id's
d'eux
Mon code:
if (link.contains("youtu")) {
String youtubeRegex = "^(http(s)??\\:\\/\\/)?((www\\.)|(m\\.))?((youtube\\.com\\/watch\\?v=)|(youtu.be\\/))([a-zA-Z0-9\\-_])+";
Pattern pattern = Pattern.compile(youtubeRegex);
Matcher matcher = pattern.matcher(link);
if (matcher.find()) {
isValid = true;
} else {
isValid = false;
}
} else if (link.contains("vimeo")) {
String vimeoRegex = "^https:\\/\\/?vimeo\\.com\\/(clip\\:)?(\\d+).*$";
Pattern pattern = Pattern.compile(vimeoRegex);
Matcher matcher = pattern.matcher(link);
if (matcher.find()) {
isValid = true;
} else {
isValid = false;
}
}
Ce regex ne fonctionne pas properly.It accepte même sans lien https ot http
Votre première regex entoure la partie http dans un groupe de capture '()' suivi d'un '?', Ce qui en fait en option. Donc, si vous ne voulez pas ceux sans le protocole, je suggère d'enlever ce '?' – LukStorms