Wie kann ich kyrillische Zeichenkette in c # in Englisch umwandeln?

7

Ist es möglich, in c # kyrillische Zeichenketten in Englisch (Latein) zu konvertieren? Zum Beispiel muss ich "Петролеум" in "Petroleum" konvertieren. Außerdem habe ich vergessen zu erwähnen, dass ich, wenn ich eine kyrillische Zeichenfolge habe, so bleiben muss, also kann ich das irgendwie überprüfen?

    
Pece 20.06.2010, 13:30
quelle

10 Antworten

7

Ich bin mit Kyrillisch nicht vertraut, aber wenn es nur eine 1: 1-Zuordnung von kyrillischen Zeichen zu lateinischen Zeichen ist, nach denen Sie suchen, können Sie ein Wörterbuch aus Zeichenpaaren verwenden und jedes Zeichen einzeln zuordnen:

%Vor%     
dtb 20.06.2010, 13:42
quelle
3

Sie können natürlich die Buchstaben der lateinischen Transkription zuordnen, aber in den meisten Fällen erhalten Sie kein englisches Wort. Z.B. Российская Федерация überträgt auf Rossiyskaya Federatsiya. wikipedia bietet einen Überblick über das Mapping. Sie suchen wahrscheinlich einen Übersetzungsdienst, Google bietet wahrscheinlich eine API dafür.

    
Femaref 20.06.2010 13:40
quelle
3

Wenn Sie Windows 7 verwenden, können Sie die neue ELS-API (Extended Linguistic Services) nutzen, die eine Transliterationsfunktionalität für Sie bereitstellt. Sehen Sie sich das Windows 7-API-Code-Paket an. Es handelt sich um eine Reihe verwalteter Wrapper, die auf vielen neuen APIs in Windows 7 basieren (wie die neue Taskleiste). Suchen Sie im Ordner Samples nach dem Beispiel Transliterator . Sie finden genau, wonach Sie suchen:

    
Igal Tabachnik 20.06.2010 15:38
quelle
2

Ссылка

Google bietet diesen AJAX-basierten Transliterationsservice an. Auf diese Weise können Sie die Transliteration selbst vermeiden und Google im laufenden Betrieb durchführen lassen. Es würde bedeuten, dass die Kundenseite die Anfrage an Google senden muss. Dies bedeutet, dass Ihre App über eine webbasierte Ausgabe verfügen muss, damit diese Lösung funktioniert.

    
kobrien 20.06.2010 15:30
quelle
2

Sie können text.Replace(pair.Key, pair.Value) function verwenden.

%Vor%

Wenn Sie

ändern

cyrlic zum Latein:

%Vor%

lateinisch zu cryllic

%Vor%     
Sarvar Nishonboyev 12.09.2014 03:23
quelle
2

Diese Methode ist sehr schnell:

%Vor%     
palota 25.02.2016 00:25
quelle
0

Verwenden Sie ein Wörterbuch mit russischen und englischen Wörtern als Nachschlagetabelle. Es wird viel tippen, um es zu bauen, aber es ist der volle Beweis.

    
kirk.burleson 20.06.2010 14:23
quelle
0

Warum willst du das machen? Das Ändern von Zeichen Eins zu Eins ergibt im Allgemeinen nicht einmal eine vernünftige Transliteration, geschweige denn eine Übersetzung. Sie können diesen Beitrag von Interesse finden.

    
Jeanne Pindar 20.06.2010 15:00
quelle
0
Sie suchen nach einer Möglichkeit, russische Wörter, die in kyrillischer Schrift geschrieben sind (in manchen Kodierungen, z. B. sogar eine lateinische Kodierung, da iso 8859-5 aka Latin-5 für kyrillisch) in lateinisches Alphabet (mit Akzenten) zu übersetzen? p>

Ich weiß nicht, ob .NET etwas zu transkribieren hat, aber ich wage zu sagen, dass es (wie viele andere gute Frameworks) nicht hat. Dieser Link zu Wikipedian könnte Ihnen einige Ideen für die Implementierung von Transliteration geben, aber es ist nicht der einzige Weg und Sie erinnern sich, dass kyrillische Schriftsysteme nicht nur von Russisch verwendet werden und die Art und Weise, wie Sie die Transliteration anwenden, von der Sprache des Schriftsystems abweichen kann. Z.B. sehen Sie dasselbe für bulgarisch . Der Link (immer von wp) kann auch interessant sein, wenn Sie den Transliterator selbst programmieren wollen.

    
ShinTakezou 20.06.2010 15:19
quelle
0

Dies ist eine Lösung für die kyrillisch-lateinische Transliteration in serbischer Sprache für folgende Form: Formular

%Vor%     
Bojan Jovanovic 16.02.2017 12:28
quelle

Tags und Links