RegEx, um Text aus den eckigen Klammern zu erhalten [duplizieren]

8

Ich habe eine Funktion, wo ich Text bekommen muss, der in eckigen Klammern, aber nicht in Klammern eingeschlossen ist, zum Beispiel

%Vor%

von der obigen Zeile möchte ich Wörter

testen

möchte

innerhalb

Klammern

Ich versuche, dies mit /\[(.*?)\]/g zu tun, aber ich werde nicht zufrieden Ergebnis ich bekomme die Wörter in Klammern aber auch Klammern, die nicht das sind, was ich will

Ich habe nach ähnlichen Fragen auf SO gesucht, aber keine dieser Lösungen funktioniert für mich hier richtig. Es ist eine gefundene (?<=\[)[^]]+(?=\]) , die in RegEx-Coach funktioniert, aber nicht mit Javascript. Hier ist refrence von wo ich das bekommen habe

hier ist, was ich bisher gemacht habe demo

bitte helfen

    
sohaan 13.06.2012, 10:37
quelle

2 Antworten

22

Ein einzelner Lookahead sollte hier den Trick machen:

%Vor%

aber in einem allgemeinen Fall führen exec oder replace -basierte Schleifen zu einfacheren Code:

%Vor%     
georg 13.06.2012, 10:48
quelle
5

Diese Geige verwendet RegExp.exec und gibt nur aus, was in den Klammern steht.

%Vor%     
Sindri Guðmundsson 13.06.2012 10:41
quelle

Tags und Links