How to remove all non-ASCII characters from a string in C#

2 Answers

0 votes
using System;
using System.Text; // StringBuilder

class Program
{
    static string RemoveNonASCII(string input) {
        StringBuilder filtered = new StringBuilder();
        
        foreach (char ch in input) {
            if (ch <= 127) { // ASCII characters are in the range 0-127
                filtered.Append(ch);
            }
        }
        
        return filtered.ToString();
    }

    static void Main()
    {
        string input = "©€ABC£µ¥xyz!® 123 こんにちは";
        string filtered = RemoveNonASCII(input);

        Console.WriteLine("Filtered string: " + filtered);
    }
}


/*
run:

Filtered string: ABCxyz! 123 

*/

 



answered Jun 12, 2025 by avibootz
0 votes
using System;
using System.Text.RegularExpressions;

class Program
{
    static void Main()
    {
        string input = "©€ABC£µ¥xyz!® 123 こんにちは";
        string filtered = Regex.Replace(input, @"[^\u0000-\u007F]+", string.Empty);

        Console.WriteLine("Filtered string: " + filtered);
    }
}


/*
run:

Filtered string: ABCxyz! 123 

*/

 



answered Jun 13, 2025 by avibootz
...