2009-08-21 6 views
0

J'ai besoin d'une expression régulière qui identifie les liens spéciaux.Motif d'expressions régulières (URL de correspondance)

J'ai un tableau avec des liens, par exemple celui-ci

array[1] = "http://domain.com/dfdf" 
array[2] = "http://domain.com/dfgf" 
array[3] = "http://domain2.com/derf" 

Je veux utiliser une expression régulière qui extrait des liens de ce tableau sous un domaine spécifique (par exemple domain2)

I » ll obtenir un tableau

array[1] = "http://domain2.com/derf" 

Je cherche le motif que (j'utilise PHP)

+0

non, j'ai les liens stockés et ils sont réguliers, je veux dire qu'ils ont le même format « http://domain.com » –

+0

ce que vous aimez utiliser domain2 ou domain2.com comme entrée? devrait www.domain2.com également être assorti par le modèle, qu'en est-il de https: //ssl.domain2.com/something? Qu'en est-il de domain2.net? Qu'en est-il des liens sans http en face d'eux? – Residuum

+0

Les expressions régulières semblent un peu inappropriées pour cette tâche. Pourquoi ne pas simplement utiliser les fonctions de chaîne? –

Répondre

2

Cette expression régulière devrait le faire:

^http://domain2\.com/ 

et converti en PCRE avec / comme séparateur:

/^http:\/\/domain2\.com\// 

Mais vous pouvez utiliser un autre personnage si vous voulez :

~^http://domain2\.com/~ 
0

Que diriez-vous:

(?<!")http://domain2.com[^"]+ 
0

Cela correspondra https ainsi que des liens http:

#^https?://domain2\.com/# 
Questions connexes