Skip to sidebar Skip to content
Ipercube Technical
Jack of all trades, master of none
Date: Time: - Stardate:
Welcome, Log in by clicking  Here!
SS64
MDN
Stack
Code
GitHub
Wiki
Convert
V Studio
  • Home
  • VB Functions
    • Access Functions
    • Assembly Info
    • Color/Image Functions
    • Data Table Functions
    • Email Functions
    • Active Directory Functions
    • LDAP Functions
    • Excel Functions
    • Logging Functions
    • Source Code Retrieval
    • String Functions
    • Sql Functions
    • Object Utilities Functions
    • System and Utilities
    • Utility Forms
  • VB Classes
    • Environment Variables Helper
  • ABAP
    • ABAP Reports
    • ABAP HTTP Functions
Ipercube Technical
  • Home
  • VB Functions
    • Access Functions
    • Assembly Info
    • Color/Image Functions
    • Data Table Functions
    • Email Functions
    • Active Directory Functions
    • LDAP Functions
    • Excel Functions
    • Logging Functions
    • Source Code Retrieval
    • String Functions
    • Sql Functions
    • Object Utilities Functions
    • System and Utilities
    • Utility Forms
  • VB Classes
    • Environment Variables Helper
  • ABAP
    • ABAP Reports
    • ABAP HTTP Functions

String Normalization – Convert Culture Chars

Removes diacritical marks (accents and other culture-specific modifiers) from a string.

This function uses Unicode normalization (FormD) to decompose accented characters, then filters out characters classified as non-spacing marks, effectively stripping accents and similar modifiers. Useful for culture-invariant text comparison or simplification.

VB
    Public Function ConvertCultureChars(ByVal TextToProcess As String) As String

        Dim normalizedString As String
        Dim stringBuilder As New System.Text.StringBuilder

        normalizedString = TextToProcess.Normalize(System.Text.NormalizationForm.FormD)

        Dim i As Integer
        Dim c As Char

        For i = 0 To normalizedString.Length - 1
            c = normalizedString(i)
            If System.Globalization.CharUnicodeInfo.GetUnicodeCategory(c) <> System.Globalization.UnicodeCategory.NonSpacingMark Then
                stringBuilder.Append(c)
            End If
        Next

        Return stringBuilder.ToString()

    End Function

Posted by ipercube


© 2026 Ipercube Design