Stringmanipulation Japanisch

  • Hallo zusammen,

    bin autoit-Anfänger und habe mir ein simples Skript geschrieben, mit dem ich markierte Einträge
    aus einem Japanischen Wörterbuch bei einer bestimmten Tastenkombination
    automatisch in ein File kopiere.
    Das funktioniert auch gut soweit.

    Jetzt möchte ich die Strings aber bearbeiten, bzw. in einem anderen
    Format abspeichern.

    Das File-Format ist UTF-8, ein Eintrag könnte zum Beispiel so aussehen.

    車; クルマ [くるま] (S) [1] Rad. [2] Wagen; Auto; Karren; Fuhrwerk;
    Gefährt; Wagon; Taxi.

    Idealerweise würde ich das jetzt gern folgendermassen abspeichern.
    車; クルマ "TAB" (S) [1] Rad. [2] Wagen; Auto; Karren; Fuhrwerk;
    Gefährt; Wagon; Taxi. "TAB" [くるま]

    Hintergrund ist der, dass ich es anschliessend mit anderen Programmen so
    besser verarbeiten kann und ich will nicht noch ein separates (z.B.
    Perl-) Skript schreiben für die Umsortierung.

    Problem: Wenn ich mit Autoit und Stringfunktionen auf den String oben
    zugreife, scheint es so zu sein, dass das Programm die Japanischen
    Schriftzeichen nicht interpretieren kann.
    Habe schon in verschiedenen Foren gesucht, aber keine wirklich passende
    Antwort gefunden.

    Konkret:
    Wie kann ich in diesem String die erste Japanische Klammer ansprechen?
    車; クルマ [くるま] (S) [1] Rad. [2] Wagen; Auto; Karren; Fuhrwerk;
    Gefährt; Wagon; Taxi.


    Vielleicht hat jemand eine Idee?

  • Probiere es mal damit:

    [autoit]


    $s = "車; クルマ [くるま] (S) [1] Rad. [2] Wagen; Auto; Karren; Fuhrwerk; Gefährt; Wagon; Taxi"
    $s1 = StringRegExpReplace($s, "(\[.+\])", '"TAB"')
    $s2 = StringRegExp($s, "\A(?U:.*(\[.+\]).*)", 3)
    $c = $s1 & ";" & '"TAB"' & $s2[0]
    MsgBox(0, "Test", $c)

    [/autoit]

    Du musst vorher in SciTE auf File->Encoding->UTF-8 gehen, damit du die Zeichen siehst!

    Gruß,
    UEZ

    Auch am Arsch geht ein Weg vorbei...

    ¯\_(ツ)_/¯

    Einmal editiert, zuletzt von UEZ (13. Januar 2011 um 13:02)