CSharp · Console
using System;
using System.Linq;
using System.Text.RegularExpressions;
public class Program
{
static string CamelCaseToSpaceSeparated(string text)
{
string[] words = Regex.Matches(text, @"([A-Z]+(?![a-z])|[A-Z][a-z]+|[0-9]+|[a-z]+)")
.OfType<Match>()
.Select(m => m.Value)
.ToArray();
return string.Join(" ", words);
}
public static void Main()
{
Console.WriteLine(CamelCaseToSpaceSeparated("MyHTTPServer"));
Console.WriteLine(CamelCaseToSpaceSeparated("XMLReaderFactory"));
Console.WriteLine(CamelCaseToSpaceSeparated("_myNewUIControl"));
Console.WriteLine(CamelCaseToSpaceSeparated("readInt32_silent"));
Console.WriteLine(CamelCaseToSpaceSeparated("_12DaysLater"));
Console.WriteLine(CamelCaseToSpaceSeparated("IMG_ButtonIcon_16px"));
Console.WriteLine(CamelCaseToSpaceSeparated("PrintButton_MouseOver"));
Console.WriteLine(CamelCaseToSpaceSeparated("int32_45_78Stuff"));
}
}