Monatsarchiv für Dezember 2007

Falls man komplexer in Eclipse suchen möchte, so besteht auch
die Möglichkeit Regular Expressions zu benutzen.

Regular Expressions(o.a. RegExp)/Regulärer Ausdrücke sind quasi Mengenabfragen
über Zeichenketten. Sie werden auch oft für Ersetzungsregeln verwendet.

Diese Regeln werden sehr schnell abgearbeitet, so das z.B. 2.000 Dateien
in wenigen Sekunden nach diesen Patterns/Mustern durchsucht werden.

In diesem Beispiel habe ich das Problem, dass durch unterschiedliche Zeichensätze
Umlaute in Fragezeichen umgewandelt wurden.

Diese Problem betrifft mehrere hundert Dateien. Mit Hilfe der RegExps möchte ich
die Codestellen finden wo z.B. wählen zu w?hlen wurden, ohne das ich jede Datei
einzel per Hand durchsuchen möchte.

ö, ä und ü stehen ja immer bei anderen Buchstaben.

Alle Buchstaben kann man per RegExp mit [A-Za-z] definieren. Alle Zeichen
von A bis Z und alle von a bis z.

Falls man nur Fragezeichen suchen möchte, geht das mit \?. Der Backslash ist
zum Maskieren des Fragezeichens, da es ansich eine RegExp-Funktionalität hat.

Umlaute können auch am Wortanfang stehen, so das nicht zwingend ein Buchstabe vorher
gehen muss, also Buchstaben davor oder dahinter.

Das ODER wird per Pipe | gesteuert.

Also entweder [A-Za-z]\? oder \?[A-Za-z]. Dieses muss als eine Gruppe
definiert werden. Gruppen setzt man mit Klammern.

Also: ([A-Za-z]\?|\?[A-Za-z])

Im Code sind oft so Stellen wie …do?todo…, …do?prepro…. und … x oder y oder z …

Also brauch’ man nur eine Teilmenge vom Ergebnis. Mit ^ kann man Mengen subtrahieren.

[^(o\?t|o\?pr|\?xml|.do\?|ll\?")] ist die Subtraktion.

Im Endeffekt hat man dann: (([A-Za-z]\?|\?[A-Za-z])[^(o\?t|o\?pr|\?xml|.do\?)])

Jörg Friedrich

Noch ein Weihnachtstipp

Der große Unterschied zwischen der Bedarfsermittlung bei Softwareprojeken und der bei Geschenken besteht darin, dass bei ersterem derjenige, der etwas bekommen soll, niemals sagt “Ich hab doch schon alles!”. Insofern hat man dort immer einen Wunsch nach etwas Neuem, das ist leider bei Weihnachtsgeschenken z.B. für die Eltern kaum der Fall.
Was soll man jemandem schenken, der partout behauptet, schon alles zu haben? Man muss die Suchrichtung ändern. Die Frage lautet nun nicht mehr “Was hätte Mutter gern?” sondern “Was tut sie gern?” Vielleicht strickt sie oder häkelt? Dann bietet es sich an, nach ausgefallenen Mustern oder Vorlagen zu suchen (z.B. auf www.stricklinks.de), das Material dazu zu kaufen, wieder alles gut verpacken… und wer klever ist, schaut nach einer Vorlage für einen Pullover in der eigenen Große.

Maik

Dateisuche im Eclipse

Wer im Eclipse nach Dateien sucht, sollte echt die Dateisuchfunktion nutzen.

Eclipse

Im Regelfall findet man so schneller was, als wenn man im Baum rumsucht. Ausserdem sieht man dann eher, ob es u.U. schon doppelte Dateinamen o.ä. gibt.

Im Suchergebnisfenster sollte man von der Anzeige als Baumstruktur auf die Listenanzeige umstellen, da es erheblich Übersichtlicher wird.

Man kann auch die alten Suchen einer Programmsitzung per suchhistorie wieder aufrufen.

Zur Zeit stehe ich vor dem Problem wie ich meine PCs zuhause komplett und kostengünstig sichern kann.

Und zu beachten ist, dass IDE-Platten langsam vom Markt verschwinden. Seagate, als einer der grössten Hersteller, will die Produktion Ende 2007 einstellen.

Es sind zwei XP-Rechner, ein Linux-Rechner, als zentraler Fileserver, und ein Linuxrechner, der als Teamspeakserver in einer DMZ steht.

Ich suche garkeine Lösung die mir eine tägliche Sicherung bietet, aber mir ein Komplettstand von den ca. 300GB sichern kann.

Das Problem ist u.a. das die XP-Rechner nur USB1.1 können und die Linuxrechner so alt sind, dass die garkein USB haben.

Meine favorisierte Lösung sieht z.Z. so aus:

zu kaufen
————-
- ein USB2.0 PCI Controller – Kosten: 10,- bis 15,- Euro
- eine externe USB2.0 SATA-Festplatte (WD od. Samsung)
(500GB sind z.Z. preis-/leistungsmässig am günstigsten)
Kosten: ca. 100,- Euro
- ein Sicherungstool (z.B. TrueImage Home): Kosten ca. 60,- Euro

Ablauf
————-
- der Controller kann in einen Rechner verbaut werden
- dann kann per bootfähiger CD das Backup auf die externe Platte gemacht werden
- dann den Controller wieder ausbauen
- nächster PC

Durch die Filters-Collection eines FilePicker-Dialogs, den man sich mit
Set fd = Application.FileDialog(msoFileDialogFilePicker)
erzeugt hat, kann man leider nur die Dateierweiterungen festlegen, nach denen gesucht werden soll. Weitere Einschränkungen sind aber mit InitialFileName möglich. Will man z.B. nur die Excel-Dateien anzeigen, die im Pfad c:\test stehen und mit ABC anfangen, sieht der Code folgendermaßen aus:

Dim fd As FileDialog
Set fd = Application.FileDialog(msoFileDialogFilePicker)
With fd
.InitialFileName = "C:\test\ABC*.xls"
.Filters.Clear
.Filters.Add "Objekte", "*.xls", 1
.Show
End With

Nächste Einträge »