Hallo zusammen,
gegeben ist folgender String. Ich brauche daraus alle KEy-Value Paare also den Wert vor dem Doppelpunkt und den Wert dahinter zb
Prozessorhersteller: Intel
nicht aber die Werte innerhalb <b></b>
habe folgendes Versucht, bringt aber komischerweise nur 3 Einträge, kennt sich jemand auf diesem Planeten damit aus und versteht, was da vor sich geht?
gegeben ist folgender String. Ich brauche daraus alle KEy-Value Paare also den Wert vor dem Doppelpunkt und den Wert dahinter zb
<b>Prozessor</b><br>Prozessorhersteller: Intel<br>Prozessorsockel: LGA 2066 (Socket R4)<br>Anzahl der unterstützten Prozessorkerne: 18<br>Prozessor Verlustleistung (max): 140 W<br><br><b>Speicher</b><br>Unterstützte Arbeitsspeicher: DDR4-SDRAM<br>RAM-Speicher maximal: 256 GB<br>Speicherspannung: 1.2 V<br>Unterstützte Arbeitsspeichergeschwindigkeit: 2133,2400,2666 MHz<br><br><b>Speicher-Controller</b><br>Unterstützte Speicherlaufwerk-Schnittstellen: SATA III<br>RAID Level: 0,1,5,10<br><br><b>Grafik</b><br>On-Board Grafikadaptermodell: Aspeed AST2500<br><br><b>Interne E/A-Anschlüsse</b><br>SATA III Anschlüsse: 8<br><br><b>E/A-Anschlüsse auf der Rückseite</b><br>Anzahl USB 2.0 Anschlüsse: 6<br>Anzahl USB 3.2 Gen 1 (3.1 Gen 1) Typ-A Ports: 5<br>Anzahl Ethernet-LAN-Anschlüsse (RJ-45): 2<br>Anzahl VGA (D-Sub) Anschlüsse: 1<br>Anzahl COM-Anschlüsse: 2<br><br><b>Netzwerk</b><br>WLAN: Nein<br>Eingebauter Ethernet-Anschluss: Ja<br>Ethernet Schnittstellen Typ: Gigabit Ethernet<br><br><b>Merkmale</b><br>Motherboardformfaktor: micro ATX<br>Motherboard Chipsatz: Intel® C422<br><br><b>Erweiterungssteckplätze</b><br>PCI-Express x16 (Gen 3.x)-Anschlüsse: 1<br><br><b>BIOS</b><br>BIOS-Typ: UEFI AMI<br>ACPI-Version: 6.0<br><br><b>Prozessor Besonderheiten</b><br>Trusted Platform Module (TPM): Ja<br><br><b>Betriebsbedingungen</b><br>Temperaturbereich bei Lagerung: -20 - 60 °C<br>Temperaturbereich in Betrieb: 0 - 50 °C<br>Luftfeuchtigkeit in Betrieb: 10 - 85%<br>Luftfeuchtigkeit bei Lagerung: 10 - 95%<br><br><b>Gewicht und Abmessungen</b><br>Breite: 243,8 mm<br>Tiefe: 243,8 mm<br><br><b>Sonstige Funktionen</b><br>PCI-Express x4 (Gen 3.x)-Anschlüsse: 1<br>PCI-Express x8 (Gen 3.x)-Anschlüsse: 2<br>Unterstützte DIMM-Modulkapazitäten: 4GB, 8GB, 16GB, 32GB, 64GB<br>Unterstützte LRDIMM Uhr Geschwindigkeiten: 2133,2400,2666 MHz<br>Unterstützte RDIMM Taktraten: 2133,2400,2666 MHz<br>Zahl der DIMM Slots: 4<br>Anzahl unterstützter Prozessoren: 1<br><br>
Prozessorhersteller: Intel
nicht aber die Werte innerhalb <b></b>
habe folgendes Versucht, bringt aber komischerweise nur 3 Einträge, kennt sich jemand auf diesem Planeten damit aus und versteht, was da vor sich geht?
Java:
String s = productDataItem.getSpecs();
Pattern p = Pattern.compile("^(<.+>)([a-z A-Z ]+?)(</.+>)$");
Matcher m = p.matcher(s);
if (m.matches()) {
String raw = m.group(3).replaceAll("<b>", "").replaceAll("</b>", "");
String[] raw1 = raw.split("<br>");
for (String attKeyValue : raw1) {
if (attKeyValue.contains(":") && attKeyValue.equals("") == false) {
String[] keyValue = attKeyValue.split(":");
map.put(keyValue[0].trim(), keyValue[1].trim());
}
}
}