2016-04-08 4 views
0

donc j'utilise l'expression regex suivante pour capturer tous les noms d'utilisateur:NSRegularExpression pas les noms d'utilisateur correspondant (@) correctement

[@]\\w\\S* 

Si je tape "@username" il correspond correctement. Mais si je tape "@[email protected]@username" le résultat est [@[email protected]@username]. Et je veux est d'être: [@username , @username , @username].

Quelqu'un peut-il me donner un coup de main s'il vous plaît?

+0

'\ S *: aucun résultat non -le caractère espace blanc [^ \ r \ n \ t \ f] '(à partir de regex101): Comment peut-il détecter 3 mentions ainsi? C'est une mention pour lui. – Larme

+0

Peut-être que cela considère "@ nom d'utilisateur @ nom d'utilisateur @ nom d'utilisateur" pour avoir un seul mot? – jonypz

+0

J'ai édité ma question car elle était incorrecte la première partie. – jonypz

Répondre

0

J'ai fini par utiliser: @ "[@] [a-z0-9 _-] +" pour les noms d'utilisateur et @ "[#] [a-z0-9 _-] +" pour les hashtags lors de la saisie.

Quand j'ai un champ de texte avec déjà connus les noms d'utilisateur/hashtags, utiliser "[@] \ w \ S *" et "[#] \ w \ S *"