Eu fiz este RegEx:
/http://(.+)?.?(stackoverflow|superuser|serverfault|stackapps|stackexchange).com/questions/([0-9]+)/?.*/i
Ele precisa corresponder a qualquer site da Stack Exchangequestão. Este é o RegEx certo? Eu testei e funciona, mas não testei em todos os sites beta e, como sei que sou Satanás no mundo RegEx, sei que há algo errado (sempre há algo errado com meu RegExes xD) .
Esse é bom? Obrigado.
Respostas:
1 para resposta № 1Você vai usá-lo contra partes que possam estar tentando enganá-lo? Isso poderia corresponder à string de consulta do URL, eu acho. (http://badguy.com?https://stackoverflow.com/questions).
Uma abordagem melhor pode ser usar uma biblioteca ou função de análise de URL para extrair os componentes importantes com segurança.
1 para resposta № 2
Tem certeza de que deseja fazer isso com uma regex? Eu acho que seria melhor se você armazenasse todos os URLs de sites existentes em algum lugar e usasse essa lista. Ao usar um regex, será necessário atualizá-lo assim que um dos sites beta for lançado e escolher seu domínio ...