2016-09-12 5 views
0

Hallo Community,RegEx holt einen Wert Daten von Satz

Ich versuche, herauszufinden, wie ich nur den Wert eines bestimmten Schlüssels erhalten. Lassen Sie uns sagen:

Item Number: 121225734541 
transaction:: 1205737904002 
Price: C $4.73 
Shipping price: Free 

Ich brauche nur den Wert nach dem ":" char.

Key: Artikelnummer, Wert: 121225734541

Irgendwelche Ideen?

+0

* "Irgendwelche Ideen?" * - Ja, tatsächlich. Aber was waren deine Ideen? Hast du welche? Welche? In welcher Weise haben sie nicht funktioniert? Zeigen Sie Ihren Code. (Wenn du keine Ideen hast und nichts versucht hast, bist du in der falschen Linie der Arbeit. Wenn du irgendetwas versucht hast und es fehlgeschlagen ist, erkläre, was du versucht hast.) – Tomalak

Antwort

0

Check this out: https://jsfiddle.net/5buspznn/1/

var raw_data = 'Item Number: 121225734541\ntransaction: 1205737904002\nPrice: C $4.73\nShipping price: Free' 

var data_object = {} 

raw_data.split('\n').map(function (data_line) { 
    var parsed = data_line.match(/(.*?):(.*)/) 
    data_object[parsed[1]] = parsed[2].trim() 
}) 

console.log(data_object) 

gibt diese:

Object { 
    Item Number: "121225734541", 
    transaction: "1205737904002", 
    Price: "C $4.73", 
    Shipping price: "Free" 
} 
0

Hier gehen Sie:

([^:]+):\s*([^\n]+) 
# anything not : 
# followed by : and whitespaces, eventually 
# anything not a newline 

Die erste Capture-Gruppe Ihre key, die zweite Ihre value hält.
Siehe a demo on regex101.com.