Javascript RegExp stimmt den Text zwischen den Tags ab

8

Ich muss mit einem Javascript übereinstimmen RegExp die Zeichenfolge: bimbo999 von diesem ein Tag: <a href="/game.php?village=828&amp;screen=info_player&amp;id=29956" >bimbo999</a>

Die Zahlen von URL vars (Dorf und ID) ändern sich jedes Mal, also muss ich die Nummern irgendwie mit RegExp vergleichen.

%Vor%

Ich habe es versucht:

%Vor%

funktioniert aber nicht. Kannst du mir helfen?

    
Ovidiu Aleka 23.10.2011, 06:34
quelle

2 Antworten

22

Versuchen Sie Folgendes:

%Vor%
  • <a[^>]*> entspricht dem öffnenden a -Tag
  • ([\s\S]*?) stimmt mit allen Zeichen vor dem schließenden Tag überein, so wenig wie möglich
  • <\/a> entspricht dem schließenden Tag

Der ([\s\S]*?) erfasst den Text zwischen den Tags als Argument 1 im Array, das von einem exec oder match Aufruf zurückgegeben wurde.

Das ist wirklich nur gut für das Finden von Text in a elements, es ist nicht unglaublich sicher oder zuverlässig, aber wenn Sie eine große Seite mit Links haben und Sie brauchen nur ihren Text, dies werde es tun.

Ein viel sicherer Weg, dies ohne RegExp zu tun wäre:

%Vor%     
zzzzBov 23.10.2011 06:41
quelle
3

Ich habe keine Erfahrung mit Regex, aber ich denke, dass Sie JQuery mit .text() ! verwenden können!

JQuery-API - .text ()

Ich meine, wenn Sie Folgendes verwenden:

%Vor%

Sie erhalten Ihren Text ohne Regex!

.find("a") und gibt Ihnen dann eine Liste der a Tags-Objekte und verwendet dann .each() , um diese Liste zu durchlaufen. Dann können Sie den Text mit .text() erhalten.

Oder Sie können einen Klassenselektor, eine ID oder etwas anderes verwenden!

    
Al-Mothafar 23.10.2011 06:47
quelle

Tags und Links