Регулярное выражение автоматически делает группу необязательной?

#regex

#регулярное выражение

Вопрос:

Я написал очень простой способ проверки URL.

 ((?:w{3}.)?(?:[a-z0-9] )(?:.[a-z]{2,6}))
  

Я хочу, чтобы следующее было действительным:

 wwww.google.nl
google.nl
  

Прямо сейчас www.google также становится действительным, чего я не хочу.
Это похоже на то, что регулярное выражение автоматически делает (?:.[a-z]{2,6}) группу необязательной.

Комментарии:

1. Первая группа необязательна, вам нужны только последние две для успешного выполнения шаблона. www также соответствует [a-z0-9]

2. @BoristheSpider Спасибо: D

Ответ №1:

Приведенное ниже регулярное выражение будет соответствовать wwww.google.nl , google.nl и не будет соответствовать www.google ,

 ^(?:w{3}.w .[a-z]{2,6})$|^(?!www.)w .[a-z]{2,6}$
  

ДЕМОНСТРАЦИЯ