2 Stimmen

kleiner Jquery-Parser

Input ist eine Zeichenkette (var str), etwa so:

"<<hello there//abcd//1234>>"

Ich möchte wissen, wie ich die Informationen am besten extrahieren kann, um dies zu erreichen:

var a = "hello there";
var b = "abcd";
var c = 1234;

Fall a: alles nach << bis zum ersten // auswählen Fall b: alles nach dem ersten auswählen // bis zum zweiten // Fall c: alles nach dem zweiten auswählen // bis >>

Kennt jemand eine einfache Lösung? THX

4voto

Andy E Punkte 324972

Wenn Sie sicher sein können, dass die inneren Zeichenfolgen keine / , > または < können Sie dies mit einem Einzeiler tun:

"<<hello there//abcd//1234>>".match(/[^<>/]+/g)
// -> ["hello there", "abcd", "1234"]

1voto

matpol Punkte 3012

In ein Array unter Verwendung von '//' als Trennzeichen aufteilen. Sie haben dann ein Array mit drei Elementen. Für das erste Element verwenden Sie dann substring, um die ersten beiden Zeichen loszuwerden, und für das letzte Element verwenden Sie wiederum substring, um die letzten beiden Zeichen loszuwerden.

Dies verwendet javascript und nicht jquery speziell

1voto

Pranay Rana Punkte 170480
var myOldString ="<<hello there//abcd//1234>>"
var myNewString = myOldString.replace("<<", '');
myNewString = myOldString.replace(">>", '');

var arrayofstring = myNewString .split("///")

var a = arrayofstring[0];
var b = arrayofstring[1];
var c = arrayofstring[2];

1voto

djdd87 Punkte 65008
var value = "<<hello there//abcd//1234>>";
value = value.substring(2, value.length-2);

var array = value.split("//");
var a = array[0];
var b = array[1];
var c = array[2];

Anstelle von substring können Sie auch value = value.slice(2, -2); (Dank an Der Kopf von Andy E. für die Alternative).

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X