Что делает (?: Делать в регулярном выражении
Я столкнулся с регулярным выражением, которое я неЯ не понимаю, может ли кто-нибудь помочь мне расшифровать это:
^home(?:\/|\/index\.asp)?(?:\?.+)?$
Он используется в сопоставлении URL, а в приведенном выше примере сопоставляются следующие URL:
home
home/
home/?a
home/?a=1
home/index.asp
home/index.asp?a
home/index.asp?a=1
Мне кажется, что вопросительные знаки в скобках(?:
дон»ничего не делай. Может ли кто-нибудь просветить меня.
Используемая версия регулярного выражения - это версия Classic ASP, которая запускается на сервере, если это вообще помогает.