Wie zerlegt eine Zeichenkette zwischen zwei Trennzeichen in javascript?
Weiß ich, wie man split verwenden, werden mehrere Separatoren, aber ich habe keine Ahnung, wie split einen string in ein array zwischen zwei Zeichen. Also:
var myArray = "(text1)(text2)(text3)".split(???)
//=> myArray[0] = "text1", myArray[1] = "text2", myArray[2] = "text3"
Was muss ich eingeben in die "???"? Oder gibt es einen anderen Ansatz, den ich verwenden sollte?
Machen ")(" Trennzeichen wird nicht funktionieren, da will ich split das array mit einer Vielzahl von Separatoren wie ">", so dass es sehr unpraktisch Liste jede mögliche Kombination von Separatoren
Du musst angemeldet sein, um einen Kommentar abzugeben.
Sehen diese demo.
Benutzung der split zwischen bestimmten Zeichen ohne Zeichen nicht möglich ist, mit JavaScript, da müssten Sie einen lookbehind für die (nicht unterstützt).
Aber da Sie scheinen zu wollen, die Texte innen die Klammern, statt der Aufspaltung konnte man nur
match
die längste mögliche Zeichenkette, die nicht mit Klammern:"(text(1)(text(2)"
. Sie kann machen dieses match der öffnung Klammern, auch dannmap
Sie aus;.match(/\([^)]+/g).map(function (e) {return e.slice(1);});
(text(1)(text(2)
aber nicht(1)text)(2)text)
oder(te(1)xt)(te(2)xt)
?(
trotzig wäre nicht das Ende des Abschnitts, in der Erwägung, dass eine zweite)
sein könnte. Es ist nicht das größte Problem in der Welt, obwohl.