Es sollen Hauptwörter gefunden werden, wie achtung, meldung, wahrheit, gesellschaft und natürlich auch verfügbarkeit, möglichkeit usw.

Die ganze Zeile sieht so aus:

(\x20|\x09|\x0D)([a-z]{2,28})(ung|heit|keit|tion|schaft)(en)?(\x20| \x2C|\x2E|\x3A|\x3B)"

Ich dachte, dass RB intern sowieso mit UTF8 arbeitet?

Gruß
Robert




Am 25.03.2009 um 17:11 schrieb Christian Dorn:

Hast Du schon versucht, die Umlaute über ihren Hexadezimalwert zu definieren?

([a-z]\xE4\xF6\xFC\xDF{2,28})


Sorry, das war nichts! Die Hexadezimalwerte müssten innerhalb der eckigen Klammer stehen, also

([a-z\xE4\xF6\xFC\xDF]{2,28})

Ich habe aber gerade mal meinen ersten Vorschlag getestet, und ich bekomme hier das Ergebnis, was ich erwartet habe. Kannst Du mir evtl. genauer erklären, was Du erreichen willst? Anhand des Suchmusters würde ich vermuten, Du sucht 2 bis 28 aufeinanderfolgende Zeichen aus der Menge a-z, ä. ö, ü und ß!?

Kann es evtl. sein, dass Dein Suchstring eine falsche Kodierung hat? Wenn ich mich recht erinnere, hat Rb Probleme, wenn der zu durchsuchende String eine andere Kodierung als UTF8 hat! Versuche doch mal, direkt vor der RegEx-Suche den String nach UTF8 zu konvertieren:

s = ConvertEncoding(s, Encodings.UTF8)

Gruß
Christian

----------------------------------------
Christian Dorn
realbasic {a} online.de

REALbasic 2008.5-1 Pro
iMac 3.06 GHz Intel Core 2 Duo, 4 GB RAM
PowerMac G5 2x2GHz, 1.5 GB RAM
Mac OS X 10.5.6
----------------------------------------









Antwort per Email an