11
votes

Regex pour correspondre à "www" ou rien

J'ai les URL suivantes:

www.localhost.com
localhost.com
test.localhost.com


2 commentaires

Voulez-vous simplement tester si l'URL commence avec www?


Ce ne serait-il pas une déclaration vraie que une chaîne String (1) commence par www, ou (2) ne commence pas avec www?


4 Réponses :


27
votes
(?:www)?
should match www or nothing.

5 commentaires

Que fait le "?:" avant "www"?


(ABC) CAPTURE, (?: ABC) est regroupant sans capture. Voir régulier-expressions.info/brackets.html


Une chose à noter cependant, est-ce que cela ne correspondre toujours pas localhost.com, vous devez ignorer le point par la suite aussi.


Cela correspondra à www n'importe où dans la chaîne, telle que exemplewww.com


a dû réécrire le mien pour inclure le . puisque le non-www n'a pas de point de dirigeant nulle part: ^ (?: www \.)?



0
votes

Si je comprends votre question correctement, vous devez utiliser un lookahead, comme celui-ci: XXX

Ceci correspondra au www si et seulement s'il est suivi de < code> .localhost.com .

Si ce n'est pas ce que vous essayez de faire, s'il vous plaît clarifier.


1 commentaires

Cela ne correspond à rien car vous ne pouvez pas correspondre à un .Localhost.com après la fin de la chaîne.



-2
votes

www. +? Il correspond à toutes les chaînes qui ont préfixé comme www


0 commentaires

0
votes

/ ^ nouveau / vous permet de vérifier si les objets démarrent avec www .


0 commentaires