2011-05-17 3 views

Répondre

7

Vous voulez dire /http(?:s)?:\/\/(?:www\.)?twitter\.com\/([a-zA-Z0-9_]+)/

+1

Je me demandais: les utilisateurs de twitter ne sont-ils pas autorisés à utiliser des lettres autres que [a-zA-Z] dans leurs noms? Il semble plutôt injuste à tous les utilisateurs asiatiques/russes/arabes ... –

+1

@Thomas: Non; J'ai vérifié. – SLaks

+0

Il semble qu'il est temps de mettre à jour cette réponse, Twitter a cessé d'utiliser les URL «#!» Le 29 mai 2012 ([source] (https://blog.twitter.com/2012/improving-performance-on-twittercom)) Voici une rapide démo regex montrant le fonctionnement de RegEx mis à jour https://regex101.com/r/sH1hX1/1 –

0

Que diriez-vous:

http:\/\/twitter\.com\/(#!\/)?\w+ 
0
url.match(/http:\/\/twitter.com\/(#!\/)?(\w*)/i); 
2

Je ne suis pas familier avec jQuery mais si elle utilise regex standard, il serait quelque chose comme ceci:

http://twitter.com/(#!/)?[a-zA-Z0-9_]{1,15} 

Ce bit (#!/)? est de rendre le #/facultatif et ce [a-zA-Z0-9_]{1,15} est parce que Les noms d'utilisateur Twitter peuvent contenir des lettres (majuscules ou minuscules), des chiffres et des traits de soulignement et peuvent contenir jusqu'à 15 caractères.

6
/(?:http:\/\/)?(?:www\.)?twitter\.com\/(?:(?:\w)*#!\/)?(?:pages\/)?(?:[\w\-]*\/)*([\w\-]*)/ 

avec option en utilisant https ou ajouter www par exemple

http://twitter.com/example 
https://twitter.com/example 
http://www.twitter.com/example 
https://www.twitter.com/example 

est valide

1

Vous devez tenir compte des différences entre http et https et bien sûr www. Beaucoup de réponses oublient cette règle.

'/^(?:https?:\/\/)?(?:www\.)?twitter\.com\/(#!\/)?[a-zA-Z0-9_]+$/i'