Comment modifier l'expression régulière suivante:Expression régulière pour trouver URL String Java
String URLpattern = "((https?|ftp|gopher|telnet|file|Unsure|http):((//)|(\\\\))+[\\w\\d:#@%/;$()~_?\\+-=\\\\\\.&]*)"
avec celui qui prend en compte toutes les formes d'URL suivantes?
http://www.website.com
https://www.website.com
www.website.com
website.com
http://website.com
https://website.com
EDIT: Il y a un tas de solutions déjà proposées au problème. Je peux énumérer certains d'entre eux:
- Regular expression to match URLs in Java
- Regex to matches a url with or without http in java (bien depuis expliqué, mais ne fonctionne pas dans mon code)
- Regular Expression, match url without "http://" and any other "/"
Cependant, bien que j'ai essayé tous eux aussi, aucun d'eux ne propose une explication du comment et pourquoi l'expression fonctionne. Ainsi, chaque fois qu'il y a un dysfonctionnement (et pour moi, un dysfonctionnement se produisait dans les URL sous la forme website.com
et http://website.com
), il devient difficile pour les débutants (comme moi;)) d'appliquer toute modification ou de comprendre ce qui se passe quand il y a un échec. Une solution bien expliquée est toujours mieux qu'une solution faite par d'autres et non réplicables dans la prochaine fois =)
Pourquoi ai-je reçu autant de downvotes? Je veux dire: j'ai cherché d'autres questions liées à ce sujet mais aucun d'entre eux n'offre une solution qui fonctionne ... Si vous pensez que ce n'est pas une bonne question, vous devriez exiger de le fermer :) – Eleanore
Nous voulons voir l'effort. Si vous avez fait des recherches, montrez-le et expliquez pourquoi cela ne vous aide pas. –