How to extract a file name from a path, replace whitespaces, and make it lowercase using RegEx in C#

1 Answer

0 votes
using System;
using System.Text.RegularExpressions;

class Program
{
    static void Main()
    {
        string filePath = @"c:\path\to\file\WITH Whitespace1 and Whitespace2.cs";
        string result = NormalizeFilename(filePath);
        
        Console.WriteLine(result); 
    }

    static string NormalizeFilename(string filePath) {
        // Extract only the file name
        string filename = Regex.Replace(filePath, @"^.*[\\\/]([^\\\/]*)$", "$1");

        // Replace whitespaces with underscores
        filename = filename.Replace(" ", "_");

        // Convert to lowercase
        filename = filename.ToLower();

        return filename;
    }
}



/*
run:

with_whitespace1_and_whitespace2.cs

*/

 



answered Jul 15, 2025 by avibootz
...