RegExp: Wie man Benutzernamen aus Tweets (twitter.com) extrahiert?

7

Ich habe folgendes Beispiel getweet:

RT @ user1: Wer sind @thing und @ user2?

Ich möchte nur user1 , was und user2 .

Welchen regulären Ausdruck kann ich verwenden, um diese drei Namen zu extrahieren?

PS: Ein Benutzername darf nur Buchstaben, Zahlen und Unterstriche enthalten.

    
caw 11.04.2009, 18:33
quelle

5 Antworten

16

Getestet:

%Vor%

In Ruby (irb):

%Vor%

In Python:

%Vor%

In PHP:

%Vor%     
Stefan Gehrig 11.04.2009, 18:40
quelle
2
%Vor%

Das obige deckt das folgende Szenario ab, was andere Antworten in diesem Thread nicht tun:

  • Ein @ -Zeichen, das kein Benutzername sein soll, z. "Meine E-Mail-Adresse ist [email protected]"
  • Erlaubt immer noch einen Benutzernamen, der am Anfang einer Zeichenfolge steht, z. "@username lorem ipsum ..."
mattwindwer 25.07.2012 05:08
quelle
1

probiere einen Iterator (findall) mit dieser Regex:

%Vor%

Tschüss

    
TH3 12.04.2009 10:23
quelle
0

Das sollte es tun (ich habe aus praktischen Gründen Captures genannt):

. +? @ (? [a-zA-Z0-9 _] +): [^ @] +? @ (? [^ \ s] +) [^ @] +? @ (? [a-zA -Z0-9 _] +)

    
Colin Cochrane 11.04.2009 18:51
quelle
0

Es empfiehlt sich, die Twitter-Textbibliothek [1] in Ihr Projekt aufzunehmen, um diese Textprobleme zu beheben.

%Vor%

[1] Ссылка

    
vmariano 23.04.2014 13:55
quelle

Tags und Links