Odstranění diakritiky z textu   zodpovězená otázka

VB.NET

Zdravím,

existuje ve vb .net nějaká třída, která by uměla odstranit (resp. nahradit) z textu veškerou diakritiku (+- interpunkci) ?

nahlásit spamnahlásit spam 0 odpovědětodpovědět

Tomuto tématu je věnován celý článek na adrese http://www.aspnet.cz/Articles/92-jak-spo... . Vřele doporučuji přečíst. Samotná funkce je napsaná v C#, takže zde je to, co mi vypadlo z konvertoru:

s = s.Normalize(NormalizationForm.FormD) 
Dim sb As New StringBuilder() 
For i As Integer = 0 To s.Length - 1 
    If CharUnicodeInfo.GetUnicodeCategory(s(i)) <> UnicodeCategory.NonSpacingMark Then 
        sb.Append(s(i)) 
    End If 
Next 
Dim vysledek as String = sb.ToString() 

Funguje to tak, že pomocí funkce Normalize se háčky a čárky vytáhnou jako samostatné znaky a pak se v cyklu odstraní.

Jednoduše pak v cyklu můžete přidat další podmínku (dovnitř té stávající), která ještě odfiltruje interpunkci.

nahlásit spamnahlásit spam 1 / 1 odpovědětodpovědět

Článek si přečtu a děkuji za odpověď.

nahlásit spamnahlásit spam 0 odpovědětodpovědět
                       
Nadpis:
Antispam: Komu se občas házejí perly?
Příspěvek bude publikován pod identitou   anonym.
  • Administrátoři si vyhrazují právo komentáře upravovat či mazat bez udání důvodu.
    Mazány budou zejména komentáře obsahující vulgarity nebo porušující pravidla publikování.
  • Pokud nejste zaregistrováni, Vaše IP adresa bude zveřejněna. Pokud s tímto nesouhlasíte, příspěvek neodesílejte.

přihlásit pomocí externího účtu

přihlásit pomocí jména a hesla

Uživatel:
Heslo:

zapomenuté heslo

 

založit nový uživatelský účet

zaregistrujte se

 
zavřít

Nahlásit spam

Opravdu chcete tento příspěvek nahlásit pro porušování pravidel fóra?

Nahlásit Zrušit

Chyba

zavřít

feedback