Home » 2023
Archiv für das Jahr: 2023
Regexp Zeichengruppen finden – Zeile, die nicht mit Zeichenfolge beginnt finden
Zeichengruppen werden in Klammern gesetzt:
^(CHF).*$ findet Zeilen, die mit „CHF“ beginnen.
^(?=(CHF)).*$ ist dasselbe, aber mittels ?= wird betont, dass es ein „look ahead“ ist, der angewandt wird um zu finden.
^(?!(CHF)).*$ ist der ‚Look Ahead for NOT‚: Finde alle Zeilen, die NICHT mit „CHF“ beginnen
Regular Expressions (regexp) mit Powershell
Regular Expressions auf ein inFile.txt anwenden und das Gefundene in ein outFile.txt umleiten:
PS C:\tmp> get-content tickets.txt | Select-String '^(?=(CHF)).*$' -AllMatches >out.txt PS C:\tmp> type out.txt CHF 26.80 CHF 21.20 CHF 25.40 CHF 31.00 CHF 40.20 CHF 22.50 CHF 34.20 CHF 26.80 CHF 60.40 CHF 6.80 CHF 26.80 CHF 26.80 CHF 26.80 CHF 26.80 PS C:\tmp>
Im Beispiel werden Zeilen, die mit CHF beginnen herausgesucht.
Eclipse Nebula NatTable – Referenzen
https://www.vogella.com/tutorials/NatTable/article.html
https://www.eclipse.org/nattable/
https://github.com/HPSDeveloper/NatTableExercised : My personal NatTable exercises documented
Nebula NatTable mit Expand/Collapse-Funktion auf Kolonnen und Zeilen – SWT, Nebula und GlazedList Libraries in ein Worspace-Setup mit einbeziehen
Resultat: https://github.com/HPSDeveloper/NatTableExercised
Das SW-Projekt ermöglicht mir mit der Nat-Table-Beispielapplication (hier in Form des NatTableExamples.jar) (https://www.eclipse.org/nattable/documentation.php?page=examples_application) herumzuspielen und eigene Codes zu schreiben, die auf SWT, Eclipse Nebula NatTable, GlazedList, JFace, .. aufbauen.
Es hat sich als sehr schwer erwiesen, diese Libraries über Maven Dependencies rein zu ziehen. Stattdessen habe ich ein mir bekanntes SWT.jar und auch das NatTableExamples.jar direkt eingebunden. Das letztere enthält alle genannten Libraries ausser SWT.
Jar-File als Maven Dependency einbeziehen
Situation: Ich habe ein JAR File zur Hand und möchte es in meinem mit Maven aufgesetzten Projekt einbeziehen.
–> https://intellipaat.com/community/6786/how-to-add-local-jar-files-to-a-maven-project
Im https://github.com/HPSDeveloper/NatTableExercised ist das so realisiert. Siehe das Pom File und das ‚lib1‘ directory!
GIT Large File Support – Grosse Files ins GitHub stellen
Git lässt Files mit wenigen MBs zu. Um grössere Files pushen zu können muss man https://git-lfs.com installieren.
Ich hatte mit diesem Tool eine Scheiss-Zeit! Habs nicht in anständiger Zeit hingekriegt ein 27MB File hoch zu laden.
Grrrrrr!!!
Meine Bemühungen waren im Rahmen von https://github.com/HPSDeveloper/NatTableExercised
Diese Seite dokumentiert den Ärger mit diesem uns zugemuteten Tool: https://github.com/git-lfs/git-lfs/issues/1581
Sketchup – Merkpunkte (Anfänger)
Modell: Bezeichnet die Gesamtheit der Zeichung mit allen Teilen.
Objekt: Ein Teil des Modells.
Diese Unterscheidung ist wichtig, wenn man z.B. ein Objekt strecken möchte. Es ist dann wichtig das Objekt allein zur Bearbeitung ausgewählt zu haben (normalerweise über Rechtsklick > „Objekt bearbeiten“).
Betrachterperspektive ändern: Mittlere Maustaste drücken und Maus bewegen.
Modell verschieben: Mittlere und linke Maustaste gedrückt halten und Maus bewegen.
In Selektionsmodus wechseln: Space-Taste (oder Pfeil-Menu)
Zusammengehörende Objekte in einer Collection zusammenfassen – Mit Java Stream API
Angenommen wir haben eine Collection von Einkäufen (Joghurt, Bananen, Deodorant, Äpfel, Käse, …) und wir wollen diese zusammenfassen (z.B. Milchprodukte, Früchte, …) dann können wir das wie folgt machen:
Map<String, Purchase> condensedMap = purchases.stream()
.collect(Collectors.groupingBy(Purchase::getCategory,
Collectors.collectingAndThen(Collectors.reducing(
(a,b) -> new Category(a.getCategory().name(), Math.sum(a.price(), b.price())),
Optional::get))));
List<Category> condensedList = condensedMap.values();
Inspired by Java stream merge or reduce duplicate objects